【发布时间】:2011-12-14 00:37:11
【问题描述】:
在 bash 中,我使用 gitprompt 来显示我的 git 存储库的当前状态,所以我的 PS0 看起来像这样:[时间][存储库名称][当前路径][添加/修改文件的数量]$ 这是在 ~/.bashrc 中设置的,我将在其中导出 PROMPT_COMMAND
export PROMPT_COMMAND=$PROMPT_COMMAND';export PS1=$(gitprompt.pl c=\+ u=\~ f=\* A=\^ B=\\\\ F=\ \>\> statuscount=1)'
我也在使用屏幕(这可能会在这个问题中发挥作用)。当我创建一个新的屏幕窗口时,它会自动获取 .bashrc,因此我的 PS0 会使用该 repo 的最新 git 状态更新,不幸的是,这是我的 PS0 唯一一次使用 git 状态更新。
我该如何设置,以便每次在终端中运行命令或仅在某些命令上运行时,我的 git 状态都会更新?
我只需要在关闭文件、移动、删除或复制时运行 git status;因此,如果我可以将提示设置为仅在这些命令上运行,那将是最好的,但我会接受它在每个 bash 命令上运行(不将其绑定到我的返回键)。
这是我在 ~/.bashrc 中的整个提示
export PS0='\[\e[0;32m\][\t]\[\e[1m\][\h]\[\e[0;1m\][\w]\[\e[30;1m\]%{\[\e[1;32m\][%b]\[\e[0m\][%c%u%f%t]%}%{[%B%A%F]%}\[\e[0m\]\u\$ '
PS1=$(gitprompt.pl c=\+ u=\~ f=\* A=\^ B=\\\\ F=\ \>\> statuscount=1)
export PROMPT_COMMAND=$PROMPT_COMMAND';export $PS1'
【问题讨论】:
-
你能告诉我们你的 bashrc 中设置 PS0 的实际行吗?
-
刚刚添加了我用于提示的所有 3 行。
标签: git bash command-line command-prompt