石锅拌饭

可以显示git状态的shell prompt

by Robin Lu on Jan.15, 2009, about , ,

[更新:2009/11/05] 增加了一个小功能,如果本地分支有未推送到对应远端分支的内容,会有提示。

最近看了一些和shell prompt 有关的文章,把自己的shell prompt调整了一下。

在一般目录里就是这样:
Prompt1
分别显示用户名@主机、时间和当前目录。

如果当前目录刚好是一个git repository,就是这样:
Prompt2
后面会多出当前的git branch的名字。

如果当前git repository有还没提交的内容,git branch名就是红色的:
Prompt3

这是我使用的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

:, ,

8 Comments for this entry

  • Jason Lai

    不错不错。我根据你的版本自己改了改,搞出了个自己的版本。

    补齐 prompt bar 长度的 LINE 还是替换成每次自动计算的吧,否则 Term 的窗口最大化以后,列数变多,行尾补齐的 - 就少掉了,这样就不太好看了:)

  • Jason Lai

    貌似 Robin 和我一样喜欢用 Novel 的肉色 Term 背景,对视力好而且养眼 :)

  • Tin

    真棒!喜欢这个$PS1。原本我把git的branch显示在原来的$PS1后面的。我是学的ongoing同学的米色背景,和@jason与@robinlu同学这个肉色比要亮一些。

  • apex

    出现这样的error?!

    expr: syntax error
    -bash: test: -gt: unary operator expected

    我是OSX 10.5.6

  • apex

    最后我改成这样了:-_-

    export PS1=’┌────[\u@\h]─────[\t]─────[\W]─────$(parse_git_branch)────────────

  • Robin Lu

    啥时候大家可以一起秀一秀prompt。呵呵

  • GMark

    @apex.
    我这也有这问题,貌似$column在初次运行得时候取不到?现在设成定宽了。

  • Summer

    看来超赞的 Novel theme真的很受欢迎。本来想问有没有svn的 promot,现在看来,我得装个git server了

Archives

Browse by tags