Git для Windows: .bashrc или эквивалентные файлы конфигурации для оболочки Git Bash


250

Я только что установил Git для Windows и рад видеть, что он устанавливает Bash.

Я хочу настроить оболочку так же, как я могу под Linux (например, настроить псевдонимы, например llдля ls -l), но я не могу найти .bashrcили эквивалентные файлы конфигурации.

Что я должен редактировать?


1
Прочитайте это для более поздних версий: /programming/32186840/git-for-windows-doesnt-execute-my-bashrc-file
Виктор Петит

Для получения информации о WSL смотрите: stackoverflow.com/questions/40820822/…
Вадим

Ответы:


306

Создайте .bashrcфайл под ~/.bashrcи все, и вы идете. Аналогично для ~/.gitconfig.

~обычно ваша C:\Users\<your user name>папка Набрав echo ~в терминале Git Bash, вы узнаете, что это за папка.

Если вы не можете создать файл (например, под управлением Windows), выполните следующую команду:

copy > ~/.bashrc

Окно выведет сообщение об ошибке ( команда не найдена ), но файл будет создан и готов для редактирования.


3
Это файл, а не папка. ~ / .bashrc находится в вашем домашнем каталоге, поэтому он должен быть каталогом, в котором вы находитесь, как только вы запустите оболочку git bash. просто создайте файл с именами .bashrc и .gitconfig.
Чарльз Ма

12
Чтобы создать файл .bashrc, выполните в командной строке DOS следующее: copy> .bashrc. Он создает файл с «Синтаксис команды неверен». но вы можете редактировать это сейчас.
tmorell

31
Просто введите notepad ~/.bashrcв командной строке bash, и блокнот запустится с открытым файлом или попросит его создать, если он не существует. Если вам удобно vim, просто введите vim ~/.bashrc. Это хорошо сработало для меня.
Херардо Лима

10
В Windows есть хитрость для создания таких файлов, как .profile (без букв перед точкой): щелкните правой кнопкой мыши -> создать новый файл -> текстовый файл -> назовите его .profile. (ЗАМЕТЬТЕ ТОЧКУ в конце) -> нажмите ввод
Денис

13
Вы также можете просто напечататьtouch ~/.bashrc
Чиль тен Бринке

110

В новых версиях Git для Windows запускается --loginBash, из-за чего Bash не читает .bashrcнапрямую. Вместо этого это читает .bash_profile.

Если этот файл не существует, создайте его со следующим содержимым:

if [ -f ~/.bashrc ]; then . ~/.bashrc; fi

Это заставит Bash прочитать .bashrcфайл. Исходя из моего понимания этой проблемы , Git для Windows должен делать это автоматически. Однако я только что установил версию 2.5.1, а это не так.


6
Спасибо. Это было именно то, что происходило с моей установкой.
jmk2142

Действительно, это то, что случилось со мной недавно после обновления до 2.5. Спасибо за Ваш ответ.
Винсент

1
Спасибо от меня тоже. это сводило меня с ума, что Git Bash игнорировал мой файл .bashrc, поэтому ваш ответ сработал как талисман.
Майк Коллинз

"Просто введите notepad ~ / .bashrc из командной строки bash, и блокнот запустится с открытым этим файлом или попросит его создать, если он не существует. Если вам удобно vim, просто введите vim ~ / .bashrc Это сработало хорошо для меня. - Херардо Лима "Это решение работает для меня
fedeteka

8

Я должен добавить пользовательскую переменную окружения, HOMEс C:\Users\<your user name>, перейдя в систему , Дополнительные параметры системы , в Свойства системы окно, Advanced вкладка, Переменные среды ...

Затем в моем C:\Users\<your user name>я создал файл .bashrc, например, touch .bashrcи добавил нужные псевдонимы.


добавьте переменную среды пользователя HOME, а затем создайте файл .bashrc с необходимым содержимым, например: #! / bin / bash export TERM = msys
snassr

6

Я думаю, что вопрос здесь заключается в том, как найти файл .bashrc в Windows.

Поскольку вы используете Windows, вы можете просто использовать такие команды, как

start .

ИЛИ

explorer .

чтобы открыть окно с корневым каталогом вашей установки Git Bash, где вы найдете .bashrcфайл. Возможно, вам придется создать его, если он не существует.

Вы можете использовать инструменты Windows, такие как Notepad ++, для редактирования файла вместо использования Vim в вашем окне Bash.


Это хорошая альтернатива Windoze, если кто-то захочет отредактировать файл вне git bash. Действительно помог мне спасибо.
haggisandchips

5

1) Начните с открытия git-bash.exe в режиме администратора. (Щелкните правой кнопкой мыши файл и выберите «Запуск от имени администратора» или измените настройки в разделе «Свойства» → «Совместимость» → «Запустить программу от имени администратора».)

2) Беги cd ~. Это приведет вас к C:/Users/<Your-Username>.

3) Беги vi .bashrc. Это откроет вас в редакторе. Нажмите INSERT и начните вводить следующую информацию:

alias ll="ls -la" # this changes the default ll on git bash to see hidden files.
cd "C:\directory\to\your\work\path\"
ll # this shows your your directory before you even type anything.

2

Просто notepad ~/.bashrcиз оболочки git bash и сохраните свой файл. Вот и все.

ПРИМЕЧАНИЕ. Убедитесь, что вам необходимо перезапустить терминал, чтобы изменения были отражены.


1

для gitbash в windows10 обратите внимание на файл конфигурации в

/.gitconfig file



0

Пожалуйста, используйте следующую команду,

cat /etc/bash.bashrc > ~/.bashrc

Это создаст новый файл bashrc со значениями по умолчанию. Пожалуйста, используйте vi ~/.bashrcдля редактирования этого файла.


-3

Иногда файлы на самом деле находятся в ~/. Это шаги, которые я предпринял, чтобы запустить Zsh в качестве терминала по умолчанию в Visual Studio Code / Windows 10.

  • cd ~/

  • vim .bashrc

  • Вставьте следующее ...

if test -t 1; then exec zsh fi

  • Сохранить / закрыть Vim.

  • Перезагрузите терминал


Я больше не могу открыть терминал. При открытии терминала он закрывается автоматически.
maheshwaghmare

1
Это решение не помогает, если у пользователя нет zsh на его / ее компьютере. @maheshwaghmare Если проблема не устранена, удалите три добавленные строки из файла .bashrc.
YoungChoi

-6

Если вы хотите иметь список выбора проектов при открытии Git Bash:

  • Измените ppathв заголовке кода путь к своим проектам Git , поместите этот код в файл .bashrc и скопируйте его в каталог $ HOME (в Windows Vista / Windows 7 это часто C: \ Users \ $ YOU )

,

#!/bin/bash
ppath="/d/-projects/-github"
cd $ppath
unset PROJECTS
PROJECTS+=(".")
i=0

echo
echo -e "projects:\n-------------"

for f in *
do
    if [ -d "$f" ]
    then
        PROJECTS+=("$f")
        echo -e $((++i)) "- \e[1m$f\e[0m"
    fi
done


if [ ${#PROJECTS[@]} -gt 1 ]
then
    echo -ne "\nchoose project: "
    read proj
    case "$proj" in
        [0-`expr ${#PROJECTS[@]} - 1`]) cd "${PROJECTS[proj]}" ;;
        *) echo " wrong choice" ;;
    esac
else
    echo "there is no projects"
fi
unset PROJECTS
  • Возможно, вы захотите установить этот файл как исполняемый внутри Git Bash , chmod + x .bashrc (но он, вероятно, избыточен, поскольку этот файл хранится в файловой системе NTFS ).

Этот конфиг совершенно касателен к вопросу.
Мэтью Читал
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.