为什么PS1没有使用git分支名称更新?

exe*_*ook 8 git bash

PS1="\\w (`git branch | grep '^*' | cut -b 3-100`)$ "
Run Code Online (Sandbox Code Playgroud)

我将PS1设置为如上所述,但在更改分支后,它不会更新提示中的分支名称git checkout,或者使用更改存储库cd.如何解决这个问题?

Ry-*_*Ry- 12

PS1设置(一次)后评估反引号引用位,而不是显示提示时.使用单引号保存后一事件的扩展:

PS1='\w (`git branch | grep "^*" | cut -b 3-100`)$ '
Run Code Online (Sandbox Code Playgroud)