Как я могу изменить приглашение UNIX для отображения имени текущей ветви?
Я хочу изменить приглашение командной строки, чтобы оно отображало название текущей ветви. Есть ли простой способ сделать это?
(Для информации я использую Bash на Mac OS X.)
2 ответа
Нет необходимости в стороннем инструменте: Git уже предоставляет скрипт оболочки для добавления текущего имени ветки (если оно есть) в приглашение вашей оболочки; это совместимо с обоими bash
а также zsh
,
Просто скачайте этот скрипт и следуйте инструкциям по установке:
- Скопируйте этот файл куда-нибудь (например,
~/.git-prompt.sh
).Добавьте следующую строку в ваш
.bashrc/.zshrc
:source ~/.git-prompt.sh
Измените свой PS1, чтобы позвонить
__git_ps1
как команда-подстановка:
- Bash:
PS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ '
- ЗШ:
setopt PROMPT_SUBST ; PS1='[%n@%m %c$(__git_ps1 " (%s)")]\$ '
необязательный аргумент будет использоваться в качестве строки формата.
Вы можете предпочесть более легкое приглашение, чем данное; например, я установил мой
export PS1='\W$(__git_ps1 "(%s)")\$ '
вместо.
Наконец, перезапустите Терминал (или источник ~/.bash_profile
, так как вы используете bash
) и тебе хорошо идти
Вы можете использовать BashIt, который представляет собой набор полезных вещей (включая отображение ветвлений в git), как показано ниже: