首页 > 解决方案 > 如何`git fetch`默认分支

问题描述

我正在编写一个通用脚本,它从一组远程存储库中获取一些分支,我希望它只获取一些分支。对于大多数分支,这很容易,因为它们是按名称指定的,我可以编写相应的 refspec,但我还没有找到获取“默认分支”的方法。

我试图传递给git fetch表单的 refspec,refs/heads/HEAD:MY/LOCAL/BRANCH但这告诉我:

致命:找不到远程参考 refs/heads/HEAD

如何在 refspec 中指定“默认分支”?目前,我只是硬编码master,但当然这只适用于那些坚持此默认设置的存储库。

标签: git

解决方案


refs/heads/HEAD

只是HEAD,甚至不是refs/HEAD。所以命令应该是

git fetch origin HEAD:MY/LOCAL/BRANCH

您可以使用查看可用的参考资料

git ls-remote origin

只看HEAD

git ls-remote origin HEAD

请参阅https://git-scm.com/docs/git-ls-remotehttps://git-scm.com/docs/gitrevisions上的文档


推荐阅读