可以隐藏分支的Git历史可视化GUI?

6
我最开始学习分布式版本控制系统时使用了Bazaar,因为它非常适合新手。但是由于Git速度快,所以我日常工作中使用Git。唯一让我怀念Bazaar的是对话框,它允许你通过点击加号来隐藏或显示开发线路,如下图所示。请注意,保留HTML标签。

bzr qlog showing hideable branches

我想找一个类似于git的东西。我已经查看了这里这里列出的GUI,并且我认为我从这里中获得了所有相关的内容。有人知道是否有可隐藏分支的实现吗?请注意,我不是指能够指定所有分支与单个分支,几乎所有GUI都可以做到这一点。我的意思是能够隐藏或显示单个分支内任何合并提交的^2部分。
我更喜欢开源和跨平台,但即使是商业和/或仅限于Windows的内容,我也会接受。我想我可以使用bzr-git继续使用bazaar来查看历史记录,但这可能会产生比解决的可用性问题更多的问题,更不用说首次切换时引发的速度问题了。

话虽如此,如果没有可用的实现该功能,那是因为git和bazaar之间存在某些技术差异导致它不可行吗?还是因为典型工作流程或其他非功能性原因,尚未出现在开发git GUI的人的脑海中?如果没有不可逾越的技术原因,我可能会花时间自己做出这个具体的贡献。


你有没有找到解决方案? - Mr_and_Mrs_D
1
还没有。我不知道是否可行,只是还没有做过。总有一天我会抽空将其添加到开源可视化工具之一中。 - Karl Bielefeldt
选择官方版本 - git gui & ;) - Mr_and_Mrs_D
4个回答

3
GitKraken是一款新兴的工具,它可以让你选择想要查看的分支。尽管还有一些bug,但我认为它仍然很有用。 https://www.gitkraken.com/

2
你所做的底层命令是git log,它有许多选项来限制要显示的提交。gitk接受其中许多选项以限制显示的图形,或者你可以直接使用git log(例如:git log --graph --abbrev-commit --pretty=oneline --decorate)在命令提示符中查看树形结构。
要显示特定一组分支,请将它们列为gitk的参数(gitk master pu)只显示从这两个头可达的提交。您还可以使用--branches选项(gitk --branches="pt/*")使用glob表达式显示从具有pt/前缀的所有分支可达的提交。
--not选项(gitk --branches="pt/*" --not pu)表示来自pt/*分支可达的所有提交,而不包括pu分支可达的任何提交。因此,你只能看到每个pt/*分支的前几个提交,这可能不是你想要的结果。

有用的信息,但不完全是我要找的。我想要的更像是--first-parent选项,但可以在GUI上单击以“展开”所选其他父级。 - Karl Bielefeldt

1
我一直在寻找这个功能,不知道为什么更多的客户端不支持它。在命令行中,可以使用--first-parent选项来执行git log,但是没有简单的方法展开一个分支。
我所知道唯一支持此功能的客户端是SmartGit(我与SmartGit没有任何关联)。每个带有"+"的提交都是合并提交,在单击"+"后,分支会像此示例中显示的那样展开:

SmartGit first parent example

更新:我发现了一个用Python编写的命令行日志查看器,可以折叠分支:https://github.com/kalkin/git-log-viewer


1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接