旧札幌市西区

http://d.hatena.ne.jp/kei-s/ だったもの

zsh のプロンプトに、各種 VCS のブランチ名表示と、git の変更を表示

zsh の prompt に、svn やら git やらのブランチ名を表示し、git のときだけ変更点を(詳し目に)表示する zshrc の設定を、いろんなものを参考に書きました。
コードは最後の方にあります。

こんなかんじになる

  • ブランチ名を右側に表示

nothing to commit

  • git add した直後

added

  • 変更があるとき

modified

  • untracked なファイルがあるとき

untracked

  • 組み合わさっているとき

added modified untracked
ファイルの削除・リネーム、unmerged なファイルの場合の表示もある。割愛。

参考にさせてもらったところ

基本的には id:mollifier さんの、zsh で Git の作業コピーに変更があるかどうかをプロンプトに表示する方法 - mollifier delta blogを参考に、zshvcs_info を使っています。上の例がゴテゴテしていると感じる方は、リンク先のほうがスッキリしていてよいでしょう。
調べているうちに oh-my-zsh で git の細かい変更点を表示している例があったものの、それだけのために oh-my-zsh を導入するのは大きすぎると感じたので、うらやましくなって git の変更点表示部分を参考にして、そこだけ書きました。

コード

こんなかんじ。git コマンドを実際に投げてるので重いと感じることもあるかも。自分の macbook ではそんなに感じませんでした。色などお好みで変更するとよいでしょう(といいつつそこまで変更しやすくできてない)。
https://github.com/kei-s/dotfiles/blob/master/.zshrc にわたしの使ってる .zshrc があるのでそちらも参考にどうぞ。rvm のバージョンを表示をしたりもしてます。