#windows #git-bash #prompt
#Windows #гит-баш #срочный
Вопрос:
Я хотел настроить приглашение моей консоли Windows Git bash, изменив только ~/.bashrc
файл. Это работает нормально, за исключением одного момента: отображение текущей ветви репозитория git.
Я пробовал 2 метода:
- используйте встроенную
__git_ps1
функцию. Это выглядит так :
PS1="w [t]$(__git_ps1) $ "
Это не работает, ветвь не отображается (хотя __git_ps1
функция работает).
- используйте пользовательские функции. Это немного сложнее.
parse_git_dirty () { [[ $(git status 2gt; /dev/null | tail -n1) != "nothing to commit (working directory clean)" ]] amp;amp; echo "*" } parse_git_branch () { git branch --no-color 2gt; /dev/null | sed -e '/^[^*]/d' -e "s/* (.*)/1$(parse_git_dirty)/" } PS1="w [t]$([[ -n $(git branch 2gt; /dev/null) ]] amp;amp; echo " ("$(parse_git_branch)")") $ "
Это работает … вроде: название и статус филиала отображаются в репозитории git, но название филиала не обновляется после оформления заказа.
В конце концов я изменил свое приглашение, установив конфигурацию в ~/.config/git/git-prompt.sh
, но я хотел бы, чтобы это работало с помощью ~/.bashrc
(так что все мои другие настройки и псевдонимы находятся в одном месте).
Есть идеи, почему?