方法
現在develop
ブランチにいるとして下記を実行します。
$ export CURRENT_BRANCH="$(git branch --contains | cut -b 3-)"
$ echo $CURRENT_BRANCH
develop
develop
ブランチが$CURRENT_BRANCH
にセットされました。
何をやっているか
$ git branch --contains
* develop
特定のコミットが所属するブランチを探す --contains を使えば、「現在のコミットの所属するブランチ」に絞り込むことができるので、今いるブランチが分かります。(ただし、今のコミットを含むブランチが複数あるときはあんまり意味ないです。当たり前ですが。)
--contains
は自動的にHEADを参照します。
これで現在のブランチを出力します。
ただこのままだとカレントブランチを表す*
が含まれたままです。
| cut -b 3-
これでパイプで渡された標準出力の3バイト以降を出力します。
* develop
ではd
行こうが3バイト目なのでd
以降が出力されます。
最後に$()
で囲った処理を実行してexoprt CURRENT_BRANCH
でCURRENT_BRANCH
にセットします。
$ export CURRENT_BRANCH="$(git branch --contains | cut -b 3-)"