可以显示git状态的shell prompt
by Robin Lu on Jan.15, 2009, about git, hack, shell
[更新:2009/11/05] 增加了一个小功能,如果本地分支有未推送到对应远端分支的内容,会有提示。
最近看了一些和shell prompt 有关的文章,把自己的shell prompt调整了一下。
在一般目录里就是这样:
![]()
分别显示用户名@主机、时间和当前目录。
如果当前目录刚好是一个git repository,就是这样:
![]()
后面会多出当前的git branch的名字。
如果当前git repository有还没提交的内容,git branch名就是红色的:
![]()
这是我使用的prompt文件,可以把它的内容加在.bash_profile或者source引用到环境脚本里。
. prompt.sh
适用环境为Mac OS X 10.5的Terminal+bash。
相关文章:
Tip: Prompt Magic
bashish
add the current git branch to your prompt
January 16th, 2009 on 4:35 pm
不错不错。我根据你的版本自己改了改,搞出了个自己的版本。
补齐 prompt bar 长度的 LINE 还是替换成每次自动计算的吧,否则 Term 的窗口最大化以后,列数变多,行尾补齐的 - 就少掉了,这样就不太好看了:)
January 16th, 2009 on 4:37 pm
貌似 Robin 和我一样喜欢用 Novel 的肉色 Term 背景,对视力好而且养眼
January 19th, 2009 on 12:08 pm
真棒!喜欢这个$PS1。原本我把git的branch显示在原来的$PS1后面的。我是学的ongoing同学的米色背景,和@jason与@robinlu同学这个肉色比要亮一些。
January 19th, 2009 on 3:11 pm
出现这样的error?!
expr: syntax error
-bash: test: -gt: unary operator expected
我是OSX 10.5.6
January 19th, 2009 on 3:20 pm
最后我改成这样了:-_-
export PS1=’┌────[35m[\u@\h][0m─────[36m[\t][0m─────[33m[\W][0m─────$(parse_git_branch)────────────
January 19th, 2009 on 5:49 pm
啥时候大家可以一起秀一秀prompt。呵呵
January 20th, 2009 on 6:40 pm
@apex.
我这也有这问题,貌似$column在初次运行得时候取不到?现在设成定宽了。
August 27th, 2009 on 5:10 pm
看来超赞的 Novel theme真的很受欢迎。本来想问有没有svn的 promot,现在看来,我得装个git server了