woshidan's blog

あいとゆうきとITと、とっておきの話。

ターミナルにカレントディレクトリやブランチ名を色付きで表示する

自分で設定しようと思ったら、なかなか出来ずに引っかかったので次以降のためにメモしておく。

 

最初に参考にしたのはこのあたり。

MacのターミナルでGitのブランチ名を表示する - アインシュタインの電話番号

Macのターミナルのプロンプトにgitブランチ名を表示して幸せになったある男の話 | もふもふ部@CAW

bash で git コマンドのブランチ名などを補完するには - Qiita

bash_completionで「-bash: __git_ps1: command not found」となった時の対処法 - くりにっき

 

git-prompt.shとgit-completion.bashがあるか確認する

ないものは設定ファイルにsource ... って書いても読み込まれないので、whichコマンドなどを使って、どこにあるのか確認する。

なければ、https://github.com/git/git/blob/master/contrib/completion/git-prompt.shや、https://github.com/git/git/blob/master/contrib/completion/git-completion.bashからダウンロードする。

自分が設定してたときはgit-prompt.shが入ってなくて、コマンド打ち込むたびに、

 -bash: __git_ps1: command not found

 って表示されていて、原因が分かるまで気まずかった(笑)

 

~/.bashrcまたは~/.bash_profileに設定を書く

git-prompt.shとgit-completion.bashを適当なフォルダに配置して、

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\]\$ '

のsourceの行をそれぞれのファイルのパスに書き換える。

.bashrcや.bash_profileがない場合は、

touch .bash_profile

とか入力して作る。~/.bashrcに書いた場合は起動時に

source ~/.bashrc

と書くと色がつきます。

~/.bash_profileに設定した場合はターミナルを起動するだけで色がつきます。