Closed2

[Shell Script] git branch で全てのブランチのリストを取得する

Srgr0Srgr0

通常、ブランチの一覧を目視で確認する場合、git branch (-a/-r)を実行すればよい。

Srgr0Srgr0

以下のように正規表現を使用することでカンマ区切りに整形できる。ブランチ一覧をlistとして取得したい場合などに便利。

#ブランチ一覧取得したいのでno-single-branch, 履歴要らないのでmax depth=1
git clone --depth=1 --no-single-branch '''リポジトリurl'''
cd '''リポジトリ名'''

ローカル/リモート両方のブランチを対象とする場合
git branch -a | tr -s ' ' | cut -d ' ' -f 2 | sed -e 's/*//g' -e 's/remotes\/origin\///g' -e 's/remotes\/upstream\///g' | tr '\n' ',' |  sed -e 's/,$//g'

ローカルのブランチを対象とする場合
git branch | tr -s ' ' | cut -d ' ' -f 2 | sed -e 's/*//g' | tr '\n' ',' |  sed -e 's/,$//g'

リモートのブランチを対象とする場合
git branch -r | tr -s ' ' | cut -d ' ' -f 2 | sed -e 's/*//g' -e 's/origin\///g' | tr '\n' ',' |  sed -e 's/,$//g'
このスクラップは2022/12/28にクローズされました