【macOS】プロンプトにgitのブランチ名を出す方法
概要
-
git-prompt.sh
でターミナル上でgitのブランチ名がわかるようにする
- 環境変数PS1をカスタマイズしてプロンプトに時刻を出す
-
git-completion.bash
でgitコマンドがtab補完されるようにする
実現方法
1. Homebrewでgitをインストール
$ brew install git
$ git --version
git version 2.18.0
git-prompt.sh
でターミナル上でgitのブランチ名がわかるようにするgit-completion.bash
でgitコマンドがtab補完されるようにする1. Homebrewでgitをインストール
$ brew install git
$ git --version
git version 2.18.0
Homebrewでgitをインストールするとgit-prompt.sh
とgit-completion.bash
もインストールされる。
2. 実行権限を与える
$ chmod a+x /usr/local/etc/bash_completion.d/git-prompt.sh
$ chmod a+x /usr/local/etc/bash_completion.d/git-completion.bash
3. .bashrc
にPS1の設定を追記する
# read script
source /usr/local/etc/bash_completion.d/git-prompt.sh
source /usr/local/etc/bash_completion.d/git-completion.bash
# option
GIT_PS1_SHOWDIRTYSTATE=true
# git ps1
export PS1='\[\033[37m\][\t \[\033[36m\]\u\[\033[37m\]@\h \[\033[32m\]\W\[\033[37m\]]\[\033[31m\]$(__git_ps1)\[\033[00m\]\$ '
設定可能なオプション
設定したいオプションをtrueにする
-
GIT_PS1_SHOWDIRTYSTATE
- addしてない変更がある(unstaged)ときに
*
を表示 - add済みでcommitしてない変更がある(staged)ときに
+
を表示
- addしてない変更がある(unstaged)ときに
-
GIT_PS1_SHOWUNTRACKEDFILES
- addしてない新規ファイルがある(untracked)ときに
%
を表示
- addしてない新規ファイルがある(untracked)ときに
-
GIT_PS1_SHOWSTASHSTATE
- stashがある(stashed)ときに
$
を表示
- stashがある(stashed)ときに
-
GIT_PS1_SHOWUPSTREAM
- 現在のブランチがupstreamより進んでいるときは
>
を表示 - 現在のブランチがupstreamより遅れているときは
<
を表示 - 現在のブランチがupstreamより遅れてるけど自分の変更もあるときは
<>
を表示
- 現在のブランチがupstreamより進んでいるときは
PS1に使える設定
私が使ってる設定について紹介。
他にも色々と使えるのでこちらを参考にどうぞ:Bashのプロンプト変更
エスケープ文字
-
\h
:ホスト名 -
\t
:時刻(HH:MM:SS、24時間表記) -
\u
:ユーザー名 -
\W
:現在のディレクトリ名
文字の色
-
\[\033[37m\]
:White -
\[\033[36m\]
:Light Cyan -
\[\033[32m\]
:Light Green -
\[\033[31m\]
:Light Red
4. 変更を反映する
もし.bashrc
を読み込んでない場合は.bash_profile
に下記を追記する。
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
設定を反映する。
$ source .bashrc
$ source .bash_profile
はい完成
こんな感じで出力されるようになります。
[14:50:54 user@host current_dir] (branch)$
参考:「Git補完をしらない」「git statusを1日100回は使う」そんなあなたに朗報【git-completionとgit-prompt】
Author And Source
この問題について(【macOS】プロンプトにgitのブランチ名を出す方法), 我々は、より多くの情報をここで見つけました https://qiita.com/tamorieeeen/items/a5ce73fc4c0f8e825557著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .