为什么GitKraken图未按时间顺序显示同一分支的提交?

时间:2018-08-27 06:46:28

标签: git branch gitkraken

这对我的理解很奇怪,我确定我在这里遗漏了一些东西...

此外,GitKraken正在将同一分支的提交拆分/显示为2个不同的分支。

这里有个例子:

注意:数字代表创建提交时的时间顺序。下图中的所有提交均来自master分支。提交7的父级是提交6。

enter image description here

  1. 为什么GitKraken移动了提交5和6?
  2. 为什么GitKraken将同一分支的提交分成两个不同的“分支”? (实际上只有一个存在,主人)

在GitHub和gitk中,我只看到一个分支,所有提交都按时间顺序排列。

使用gitk --all编辑(抱歉,修剪消息信息)。正如我所说,在github中,提交也按时间“预期”顺序显示。

enter image description here

2 个答案:

答案 0 :(得分:2)

不久前,我问过GitKraken支持者。他们的回应:

  

您在下面指出的图形行为是一个已知问题,目前我们的团队正在审查。 GitKraken在绘制图形时仅查看提交时间戳,因此,当这些提交未按时间顺序排列时,结果是孤立的提交似乎在单独的分支上。我将给该现有项目+1,以表示您对该解决方案的额外兴趣。

答案 1 :(得分:0)

根据我的判断,您的日期在GitKraken中是否似乎是按时间顺序排列的,而您仍在得到它,这是因为GitKraken仅在使用提交者日期对提交进行排序时显示作者日期,这意味着em中的两个已经以某种方式被淘汰了同步。

当然,您可以通过交互式基础来解决此问题,但这将使您从问题中脱颖而出的所有开发分支变得平坦,这绝对是不理想的。更好的解决方案似乎是运行以下命令:

git filter-branch --env-filter "export GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"" -- --all

[摘自jphx,我只是换了引号使它在Windows上可以使用]

祝你好运!