bashでgitのブランチ名を表示

  • 104
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

bashでgitのブランチ名を表示

参考サイト:
http://blog.ruedap.com/2011/07/06/mac-terminal-git-branch-name

gitcomprication.bash を配置

配置する場所はここ: /usr/local/git/contrib/completion/

gitcomprication.bashはここ:
(Homebrewでgitを入れた場合) usr/local/Cellar/git/<gitのversionの数字>/etc/bash_completion.d/git-completion.bash

配置するためのディレクトリ作成とファイルの移動は以下の操作で行った。

mkdir -p /usr/local/git/contrib/completion/
mv git-completion.bash /usr/local/git/contrib/completion/

.bashrcの作成と記述

.bashrcはホームディレクトリに作成する。
以下の内容を記述。

# git settings
source /usr/local/git/contrib/completion/git-completion.bash
GIT_PS1_SHOWDIRTYSTATE=true
export PS1='\[\033[32m\]\u@\h\[\033[00m\]:\[\033[34m\]\w\[\033[31m\]$(__git_ps1)\[\033[00m\]\$ '

記述したら反映のために以下を実行。

 source ~/.bashrc

.bashrcを読みに行く設定をしてない場合、.bash_profileに足しておく必要がある。

$ vi ~/.bash_profile

if [ -f ~/.bashrc ] ; then
. ~/.bashrc
fi

__git_ps1: command not found

僕の場合はブランチ名が表示されず、このメッセージが表示されるようになった。
__git_ps1: command not found

git-completion.bashの前にgit-prompt.shを読みこませることで対処できるようなので、.bashrcの一行目に、以下のように書き加えた。

source /usr/local/etc/bash_completion.d/git-prompt.sh
source /usr/local/etc/bash_completion.d/git-completion.bash
GIT_PS1_SHOWDIRTYSTATE=true
export PS1='\[\033[32m\]\u@\h\[\033[00m\]:\[\033[34m\]\w\[\033[31m\]$(__git_ps1)\[\033[00m\]\$ '

追記

横長になりすぎているように感じたので、ブランチ名の後ろで改行するように変更した。

export PS1='\[\033[32m\]\u@\h\[\033[00m\]:\[\033[34m\]\w\[\033[31m\]$(__git_ps1)\[\033[00m\]\n\$ '