Macのターミナル画面にブランチ名を表示させるようにする

「今なんのブランチで作業しているんだっけ?」

こんな事ってよくありますよね。

ターミナルでブランチ名を自動的に表示できれば便利だと思ったのでやってみました。
同時進行でターミナルでの入力補完もやってます。

完成形はこんな感じです。

Before

After

ブランチ名(master)の表示と、色付けをしています。

スポンサーリンク

作業環境

OS: macOS High Sierra

ログインシェル: bash

作業内容

HomebrewでGitインストール

まずはGitをインストールします。
既にインストールしている方は飛ばしてください。

Homebrewで入れたほうが都合がいいので下記コマンドでインストールします。

$ brew install git

which gitでHomebrewで入れたGitが使えるようになっているか確認します。

$ which git
/usr/local/bin/git ←これでOK

ターミナルで入力補完

lsコマンドで「git-prompt.sh」「git-completion.bash」の存在を確認しておく。

$ ls /usr/local/etc/bash_completion.d/

下記のようになればOKです。

Homebrewで「Git」を入れた場合、上記ディレクトリにシンボリックリンクが貼られるので、前述した2つのファイル(git-prompt.sh、git-completion.bash)が存在する。

bashrcに記述を追記する

「入力補完」と「ブランチ名」表示のための記述「4行」を追記する。

ここでgit-prompt.shを読み込む記述をしないと
__git_ps1: command not foundというエラーを吐かれる。そのため以下を追記。

$ vi ~/.bashrc

// 以下vimエディタにてペースト
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\]\n\$ '

vimエディタは:wq!でセーブして保存。

~/.bashrcを読み込む設定をしていない場合は、下記の1行追加で読み込みの設定をする

$ vi ~/.bash_profile

source ~/.bashrc

さいご

ターミナルを再起動して表示と入力補完の確認をする。

正しく設定が出来ていればこんな風になってるはずです。

表示が気に食わなかった場合、以下を参考にしたりして調整するもよし。

プロンプトをカスタマイズしてgitブランチを表示する / Qiita(@caad1229)

おわり

参考記事

MacのGitで補完を効かせたりブランチ名を表示する設定(Homebrewでgitをインストールした場合) / Qiita(@koyopro)

bashでgitのブランチ名を表示 / Qiita(@tanishi)

Yet Another .bash_profile vs .bashrc + .profile 備忘録 / Qiita(@Yuki-Inoue)

OS X で Homebrew を使って git の最新バージョンを入れようとしてうまくいかなかったときの対応 / Colorless Green Webs