From: Marcus Karlsson Date: Tue, 4 Oct 2011 20:08:13 +0000 (+0200) Subject: gitk: Teach gitk to respect log.showroot X-Git-Tag: v1.7.10-rc3~7^2 X-Git-Url: https://git.tokkee.org/?p=git.git;a=commitdiff_plain;h=b2b76d10696d945bf19318831b64d009d119e051 gitk: Teach gitk to respect log.showroot In early days, all projects managed by git (except for git itself) had the product of a fairly mature development history in their first commit, and it was deemed unnecessary clutter to show additions of these thousands of paths as a patch. "git log" learned to show the patch for the initial commit without requiring --root command line option at 0f03ca9 (config option log.showroot to show the diff of root commits, 2006-11-23). Teach gitk to respect log.showroot. [paulus@samba.org: Cleaned up the Tcl a bit, use --bool on the git config call] Signed-off-by: Marcus Karlsson Signed-off-by: Paul Mackerras --- diff --git a/gitk b/gitk index d06749206..651b74004 100755 --- a/gitk +++ b/gitk @@ -7476,7 +7476,7 @@ proc addtocflist {ids} { } proc diffcmd {ids flags} { - global nullid nullid2 + global log_showroot nullid nullid2 set i [lsearch -exact $ids $nullid] set j [lsearch -exact $ids $nullid2] @@ -7510,6 +7510,9 @@ proc diffcmd {ids flags} { lappend cmd HEAD } } else { + if {$log_showroot} { + lappend flags --root + } set cmd [concat | git diff-tree -r $flags $ids] } return $cmd @@ -11559,6 +11562,11 @@ catch { } } +set log_showroot true +catch { + set log_showroot [exec git config --bool --get log.showroot] +} + if {[tk windowingsystem] eq "aqua"} { set mainfont {{Lucida Grande} 9} set textfont {Monaco 9}