git:gitk的"按日期排序"是否有命令行选项?

dig*_*sky 10 linux git command-line gitk

我正在尝试为gitk找到一个命令行选项,它具有与"View/Edit view ..."窗口中"严格按日期排序"相同的效果.

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

Von*_*onC 12

man gitk至少提到它不会采取相同的选项比git rev-list,包括

--date-order 
Run Code Online (Sandbox Code Playgroud)

此选项类似于--topo-order没有父项在其所有子项之前出现的意义,但在其他方面仍然按提交时间戳顺序排序.

有关更多信息,请参阅" 了解gitk的指南? ".


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

问题是,--date-order在同一个开发链上串起并混合提交,这样做会使得不同的开发链更难以看到.
它最终还会以更"平行"的方式显示开发,这反过来又使得视图更难以阅读.

所以我建议不要--date-order默认使用.它不会对任何正常流程添加任何内容,并且使整体情况更难以看到.

你真正想要的唯一一次--date-order(或"或" -d,这只是它的简写gitk)真的

  • 当大局真的非常简单,你真的想要看到更多的细节,因为大局太微不足道,甚至不是很有趣.
    (换句话说:--date-order对于真正简单的开发来说很好,只有几个分支,或者你已经修剪了很多历史,剩下的部分很简单)
  • 当你想调试" git rev-list"行为本身时,因为日期顺序实际上对于git遍历提交链的方式很重要.

第二种情况是我怀疑没有人,除了我和其他一些人曾经做过的事.
我发现它非常有用,--show-all当我调试版本walker时(请参阅提交" 添加" --show-all"修订版本标记进行调试 "和" 使修订限制更加强大,以防止偶尔的错误提交日期 ",第一个实现--show-all,第二个实现)是我的调试的最终结果).

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