ターミナルのbashプロンプトにgitブランチ名を表示するには

ターミナルで作業するとき、プロンプトにチェックアウト中のgitブランチ名が表示されていると、とても便利です。

ターミナルでgit操作をしない人にも、おすすめです。

ターミナルでcdしているとき、プロンプトを見るだけで、ここはgitリポジトリだ、ここはgitリポジトリではない、とすぐに判別できます。

ターミナルでgit操作しなくても、lintやテストなどターミナルで操作することは多く、そのときにブランチ名がすぐにわかります。

ぼくの好みで、3行表示です。

git-prompt.shを使わない方法です。

.bash_prompt

まず、~/.bash_promptファイルを新規作成します。

.bash_promptというファイル名は、ぼくが適当につけた名前です。例えば、ドットで始まらないmy_promptというファイル名でもかまいません。

# .bash_prompt
function git_branch() {
  s=$(git branch --no-color 2>/dev/null | sed -ne "s/^\* \(.*\)$/\1/p")
  if [ ! "$s" = "" ]; then
    echo $s
  fi
}
export PS1='\n\[\033[0;36m\]\u@\h\n\w\n\[\033[0;32m\]$(git_branch)\[\033[0m\]\n$ '
Code language: PHP (php)

.bashrc

次に、~/.bashrcの末尾に、次のように記述します。macosでは、このファイルがないので新規作成してください。

デスクトップでターミナルを起動したときや、ターミナルからbashを呼んだときに、~/.bashrcが読み込まれます。

手作業で編集するときは、日付と名前をコメントに書いておくと、自動生成された行と区別しやすくなります。

# .bashrc

〜省略〜

# 2019-05-29 by aoki
source ~/.bash_promptCode language: PHP (php)

.bash_profile

最後に、~/.bash_profileの末尾に、次のように記述します。

sshログイン時に、~/.bash_profileが読み込まれます。

# ~/.bash_profile

〜省略〜

# 2019-05-29 by aoki
source ~/.bashrcCode language: PHP (php)

新しいターミナルを開くと、新しいプロンプトが表示されます。

すでに開いているターミナルに、すぐに反映するには、

$ source ~/.bash_prompt
湊川 あい シーアンドアール研究所 2017/4
タイトルとURLをコピーしました