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
Victor Petit

Для 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: копіювати> .bashrc. Він створює файл із "Синтаксис команди невірний". але ви можете редагувати це зараз.
tmorell

31
Просто введіть notepad ~/.bashrcу підказку bash, і блокнот буде запущено з відкритим файлом або попросите його створити, якщо його не існує. Якщо вам зручно вим, просто введіть vim ~/.bashrc. Це добре працювало зі мною.
Джерардо Ліма

10
У Windows існує хитрість створення файлів типу .profile (без літер перед крапкою): клацніть правою кнопкою миші -> створити новий файл -> текстовий файл -> назвіть його .profile. (Зверніть увагу на крапку в кінці) -> натисніть Enter
Денис

13
Ви також можете просто набратиtouch ~/.bashrc
Chiel ten Brinke

110

У нових версіях Git для Windows запускається Bash, завдяки --loginчому Bash не читає .bashrcбезпосередньо. Натомість він читає .bash_profile.

Якщо цього файлу не існує, створіть його із наступним вмістом:

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

Це призведе до того, що Bash прочитає .bashrcфайл. З мого розуміння цього питання , Git для Windows має робити це автоматично. Однак я щойно встановив версію 2.5.1, і цього не зробили.


6
Дякую. Це саме те, що відбувалося з моєю установкою.
jmk2142

Дійсно, саме це сталося зі мною недавно після оновлення до 2.5. Дякую за вашу відповідь.
Вінсент

1
Дякую і мені. Гід Баш ігнорував мій файл .bashrc, тому що ваша відповідь спрацювала як шарм.
Майк Коллінз

"Просто введіть блокнот ~ / .bashrc із запиту bash, і блокнот буде запущено, коли цей файл відкриється, або попросить його створити, якщо його не існує. Якщо вам зручно vim, просто введіть vim ~ / .bashrc Це добре працювало для мене. - Джерардо Ліма "Це рішення працює для мене
fedeteka

8

Мені довелося додати змінну середовища користувача HOME, за C:\Users\<your user name>допомогою переходу до Система , Додаткові параметри системи у вікні Властивості системи , вкладці Додатково , Змінні середовища ...

Потім 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, дивіться на конфігураційний файл в Windows Vista

/.gitconfig файл



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: \ Користувачі \ $ ВАС )

.

#!/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.