Git のスクリプト作成では、チェックアウトされたブランチ名を調べる必要があります。これまでのところ、それを行う唯一の「信頼できる」方法はgit branch | sed -n '/^\* /s///p'. (color.branchやcolumn.branch.gitconfig のようなもののために引用符を怖がらせます; まったく信頼できません。) 私が見つけた唯一の他のものは ですがgit name-rev、それは HEAD を指す最初の (名前でソートされた) ブランチを返すようです:
> git checkout master
> git checkout -b another
> git checkout master
> git name-rev HEAD
HEAD another
sed -n '\#^ref: refs/heads/#s###p' .git/HEADチェックアウトされたブランチを把握するよりも良いことはありますか?