答案 0 :(得分:3)
修改gitk。 (这是一个很大的TCL脚本,因此很容易修改。)
如果您查看最新版本的gitk,您会发现:
proc drawcmittext {id row col} {
在6100附近。大约72行左右你会发现:
set date [lindex $commitinfo($id) 2]
set date [formatdate $date]
没有更多代码可以更改date
,因此从这里开始,您将对formatdate
表达式(列表索引)中的初始值所做的lindex
所做的工作陷入困境。
$commitinfo
(基于查找提交ID的关联数组)字段为:
set commitinfo($id) [list $headline $auname $audate \
$comname $comdate $comment $hasnote $diff]
(最后两行parsecommit
,在1730行左右)。所以索引2是$audate
,这是解析的作者日期。提交者日期来自索引4(索引1和3分别是作者和提交者)。
如果使用了某些命令行开关,那么明显的变化就是选择索引4。 (创建一个动态更改值的Tk按钮也是可能的,但更难。)
答案 1 :(得分:0)
torek的解决方案作为gitk 1.8.1.4-1.1.1的补丁来显示提交者日期而不是作者日期:
--- /usr/bin/gitk 2013-02-26 15:44:18.000000000 +0100
+++ /usr/local/bin/gitk 2017-09-14 13:52:13.629947026 +0200
@@ -5963,7 +5963,7 @@
}
set headline [lindex $commitinfo($id) 0]
set name [lindex $commitinfo($id) 1]
- set date [lindex $commitinfo($id) 2]
+ set date [lindex $commitinfo($id) 4]
set date [formatdate $date]
set font mainfont
set nfont mainfont
在gitk.patch
中保存此修补程序并应用:
cp /usr/bin/gitk .
patch -p0 gitk gitk.patch
sudo mv gitk /usr/local/bin
答案 2 :(得分:-1)
使用此选项显示提交日期
git show -s --format=%ci <commit>
查看手册页以获取其他日期字符串格式