我尝试过gitbranch-r,但它只列出了我在本地跟踪的远程分支。我如何找到我没有的列表?(该命令是否列出所有远程分支或仅列出未跟踪的分支对我来说无关紧要。)
当前回答
TL;TR;
这是您问题的解决方案:
git remote update --prune # To update all remotes
git branch -r # To display remote branches
or:
git remote update --prune # To update all remotes
git branch <TAB> # To display all branches
其他回答
接受的答案对我有用。但我发现从最近的提交开始排序更有用。
gitbranch-r--sort=提交日期
https://git-scm.com/docs/git-branch
But
git分支-ar
应该这样做。
对于这里的绝大多数访问者来说,“我如何在Git 1.7+中列出所有远程分支?”这个问题的正确和最简单的答案是:
git branch -r
对于少数[1]git分支-r不起作用。如果gitbranch-r不起作用,请尝试:
git ls-remote --heads <remote-name>
如果git branch-r不起作用,那么可能正如Cascabel所说的“您修改了默认的refspec,这样git fetch和git remote update就不会获取所有远程的分支”。
[1] 在撰写本脚注2018年2月时,我查看了评论,发现git branch-r适用于绝大多数人(约90%或140人中的125人)。
如果gitbranch-r不起作用,请检查git-config-get-remote.origin.fetch是否包含通配符(*)
确保列出的远程源确实是所需的存储库,而不是较旧的克隆。
假设您在远程存储库上有以下分支:gitbranch-a为您提供:
*remotes/origin/release/1.5.0
remotes/origin/release/1.5.1
remotes/origin/release/1.5.2
remotes/origin/release/1.5.3
remotes/origin/release/1.6.0
根据上面的结果,命令gitbranch-rl'*/origin/release/1.5*'给出如下:
origin/release/1.5.1
origin/release/1.5.2
origin/release/1.5.3
-r代表远程
-l使用<pattern>列出
推荐文章
- 为什么我需要显式地推一个新分支?
- 如何撤消最后的git添加?
- Rubymine:如何让Git忽略Rubymine创建的.idea文件
- Gitignore二进制文件,没有扩展名
- Git隐藏错误:Git隐藏弹出并最终与合并冲突
- 了解Git和GitHub的基础知识
- 没有。Git目录的Git克隆
- 在GitHub上有一个公共回购的私人分支?
- Git与Mercurial仓库的互操作性
- 忽略git中修改(但未提交)的文件?
- “git restore”命令是什么?“git restore”和“git reset”之间有什么区别?
- Git合并与强制覆盖
- Git拉另一个分支
- 在Bash命令提示符上添加git分支
- 如何更改Git日志日期格式