Как я могу иметь оболочку для Git, как в Windows?

9

Когда я использую Windows, оболочка (даже стандартная оболочка Windows) показывает основную информацию о репозитории git, когда вы находитесь в репозитории git. Такие вещи, как активная ветвь и, возможно, некоторая цветовая кодировка.

Есть ли способ сделать то же самое в Ubuntu?

Никола Пелучетти
источник
какую версию git вы установили в windows? Какие команды вы запускаете, чтобы получить эту информацию? Вы пробовали эти команды с git-coreустановленным пакетом?
Jackweirdy
На git у меня последняя версия, но просто если я использую командную строку и нахожусь в git-репозитории, я вижу имя активной ветки
Nicola Peluchetti

Ответы:

4

Оболочка Windows Git, которая на самом деле просто bash, устанавливает приглашение $PS1в длинную строку, которая включает $(__git_ps1).

__git_ps1 определяется как функция длиной почти 100 строк, которая выводит имя текущей ветви в скобках.

/etc/profile(который C:\Program Files (x86)\Git\etc\profile, по крайней мере, в моей системе)) вызывает /etc/git-completion.bash, который определяет __git_ps1функцию, устанавливает $PS1, определяет некоторые специфические для git дополнения, среди прочего.

git-completion.bashИспользуется Git Bash , кажется, основаны на этом .

Кит Томпсон
источник
1
Так что именно я должен сделать, чтобы активировать это на uBuntu? :) Извините, но я новичок.
Никола Пелучетти
Перейдите в домашний каталог и введите команду в терминале как «gedit .baschr», и вы предложите отредактировать файл .baschr. Но для безопасности обязательно сохраните оригинальную копию в другом каталоге.
Рахаль Канишка
4

Для цвета:

git config --global color.ui true
Джастин зейтер
источник
1

Если вы используете zsh в качестве оболочки, вы можете найти мои файлы конфигурации полезными. Попробуйте source prompt/blockyпосмотреть, как выглядит приглашение в репозитории Git.

pconley
источник
1
  • Как остановить побег подсказки цветов bash, есть пример. Вы можете скопировать его из ответа и затем использовать gedit, чтобы вставить его в конец вашего файла .bashrc в вашем домашнем каталоге (сначала сделав резервную копию, конечно же).

  • Если файл .bashrc, который Кит упоминает в своем ответе, является частью git, он будет лицензирован с GPL2, поэтому вы также можете свободно вставлять его в свой файл .bashrc. Вам нужно взять файл /etc/git-completion.bash и установить его где-нибудь еще, и ваш новый .bashrc ссылается на него.

  • Вот еще кое-что, что вы можете вставить и попробовать от Артуро Фернандеса на http://www.bsnux.com/recipes/how-display-you-current-git-branch-prompt.html

 # Отображение ветки git внутри приглашения
 function parse_git_branch {
   git branch --no-color 2> / dev / null | sed -e '/ ^ [^ *] / d' -e 's / * \ (. * \) / (\ 1) /'
 }

 function proml {
   местный ЗЕЛЕНЫЙ = "\ [\ 033 [0; 32 м \]"
   местный БЕЛЫЙ = "\ [\ 033 [0; 37 м \]"

 PS1 = "[\ u @ \ h \ w $ GREEN \ $ (parse_git_branch)] $ WHITE \ $"
 PS2 = '>'
 PS4 = '+'
}
proml
Джон С. Грубер
источник