如何让 gitk 只显示本地分支?甚至更好 - 我可以隐藏没有相应本地分支的远程分支吗?
您可以创建一个仅显示本地分支的新"视图",如下所示:
- 转到视图 ->新视图...(或按 Shift-F4)
- 在出现的对话框中,为"视图名称"指定一些有意义的内容,例如"本地分支"
- 在"参考"区域中选中"所有(本地)分支"
- 选中"记住此视图"以保存这些设置以供将来启动
现在,您应该在"视图"菜单中看到"本地分支"选项。选择此视图将仅显示本地分支中存在的提交。请注意,您可能仍会看到远程分支标签,但前提是它们指向的提交位于本地分支中。
由于我在搜索中找到了这个问题,因此接受的答案对我不起作用,我最终找到了一个解决方案,我想我会分享:
gitk --argscmd='git for-each-ref --format="%(refname)" refs/heads'
如果您添加一个分支,然后使用 F5 刷新正在运行的 gitk,它甚至会更新。您还可以包含标签:
gitk --argscmd='git for-each-ref --format="%(refname)" refs/heads refs/tags'
或者使用rev-list(更短,但有点作弊):
gitk --argscmd='git rev-list --no-walk --branches --tags'
gitk --branches
它对应于进入"视图"并检查"所有(本地)分支"
经过一番实验,我找到了解决方案。以下命令有效:
echo $(git branch) | gitk
它仅显示具有相应本地分支的远程分支。使用 echo $(git branch)
很重要,因为它强制branch
返回分支的原始列表,而不是格式化输出,如下所示:
$ git branch
develop
release-M4.1
vendor
* xflow