如何仅从远程gitrepo中获取分支名称?
如何在不获取对象的情况下获取远程引用列表(仅名称和提交 ID)?
WebUI 显然不是答案。
我发现的只是远程HEAD名称:
$ git remote -v show origin
* remote origin
Fetch URL: https://git.git
Push URL: https://git.git
HEAD branch: main
Remote branch:
refs/remotes/origin/master stale (use 'git remote prune' to remove)
Local branch configured for 'git pull':
master merges with remote master
回答
您可以使用git ls-remote origin:
$ git ls-remote origin
670b81a890388c60b7032a4f5b879f2ece8c4558 HEAD
ebf3c04b262aa27fbb97f8a0156c2347fecafafb refs/heads/maint
670b81a890388c60b7032a4f5b879f2ece8c4558 refs/heads/master
670b81a890388c60b7032a4f5b879f2ece8c4558 refs/heads/next
33bc620fd1829b92a6671b6bd65ee357447aa964 refs/heads/seen
2cbe4a3e125e059242544ae415ee82452eccc15b refs/heads/todo
这列出了引用,包括分支和标签。如果您只想要分支,则可以将其限制为匹配refs/heads: 的内容git ls-remote origin | grep refs/heads。