我有一个本地存储库,我通过git clone --mirror <ssh-url>
. 然后我使用git remote update --prune
.
此时,HEAD
指向refs/heads/master
然后我转到我的 github 存储库的 Admin 部分,并更改默认分支。我所有的分支都照常更新,但 HEAD 仍然是refs/heads/master
(是的,分支有不同的哈希值)
我目前的想法是使用git ls-remote
获取 HEAD 和所有分支的哈希,然后使用一些 grep/awk 魔术,提取 HEAD 的哈希,然后选择具有匹配哈希的第一个分支,并用于git symbolic-ref HEAD <found branch name>
在本地设置它。
但是有没有更简单的方法来获取远程HEAD
分支名称(以可以在脚本中更新的方式)?