2つのブランチを持つgitリポジトリがあります:
$ git branch
* master
test/branch
次の手順で、特定のブランチを個別に一覧表示できます。
$ git branch --list master
* master
$ git branch --list test/branch
test/branch
ただし、このコマンドを変数として保存すると、予期しない結果が発生します。
$ LOCAL=$(git branch --list master); echo $LOCAL
index.php readme.md master
$ LOCAL=$(git branch --list test/branch); echo $LOCAL
test/branch
結果は常に一貫しているとは限りません。作業しているリポジトリによっては、スラッシュのあるブランチから予期しない結果が得られる場合もあれば、ない場合もあります。何が起こっているのか、なぜ起こっているのかを正確に把握することはできません。
1つのブランチリストファイルをディレクトリとブランチ自体にリストし、もう1つにブランチだけをリストするのはなぜですか?
上記では、Bashが*
の先頭に表示される$LOCAL
を展開しているようです。 echo "$LOCAL"
をお試しください。