14

我正在尝试为 gitk 找到一个命令行选项,它与“查看/编辑视图...”窗口中的“严格按日期排序”具有相同的效果。

man gitk与 GUI 中可用的选项相比,显示的选项数量非常有限。

4

1 回答 1

15

man gitk至少提到它确实采用与 相同的选项,git rev-list包括

--date-order 

此选项类似于--topo-order没有父级在其所有子级之前的意义上,但除此之外,事物仍按提交时间戳顺序排序。

有关更多信息,请参阅“理解 gitk 的指南? ”。


注意:如果-d或者--date-order真的是你所追求的论点,最好不要使用太多,根据 Linus 自己的说法(来自lists-archives.com/gitwww.spinics.net/lists/git/):

问题是,--date-order将同一开发链上的提交串起来并混合在一起,这样做会使不同的开发链更难看到。
它最终还以一种更“平行”的方式展示了开发过程,这反过来又使视图更难阅读。

所以我建议不要--date-order默认使用。它不会为任何正常流程添加任何内容,并且会使全局更难看到。

你真正想要的唯一一次--date-order(或“ -d”,它的简写形式gitk)是真的

  • 当大图真的很简单,而您实际上想看到更多细节时,因为大图太琐碎了,否则甚至不会有趣。
    (换句话说:--date-order对于只有几个分支的非常简单的开发,或者你已经修剪掉了太多的历史,剩下的部分很简单)
  • 当您想调试“ git rev-list”行为本身时,因为日期顺序实际上对 git 如何遍历提交链很重要。

第二个案例是我怀疑除了我和其他几个人之外没有人做过的事情。
我发现它在我调试修订walker 时非常有用--show-all(请参阅提交“添加” --show-all“用于调试的修订walker 标志”和“使修订限制对偶尔的错误提交日期更加健壮”,第一个实现--show-all,第二个实现是我调试的最终结果)。

换句话说:永远不要默认以“ -d”或“ ”开头。 只有当您有某种理由认为该视图过于简单或者您需要深入了解提交关系时才应该使用它。--date-order

于 2011-11-18T20:43:27.747 回答