From: Linus Torvalds Date: Sun, 7 Aug 2005 20:58:56 +0000 (-0700) Subject: [PATCH] gitk "parent information" in commit window X-Git-Url: https://privyetmir.co.uk/gitweb.cgi?a=commitdiff_plain;h=8b19280930eba7d66549f64344a49b3641821046;p=gitk [PATCH] gitk "parent information" in commit window This adds a useful "Parent:" line to the git commit information window. It looks something like this (from the infamous octopus merge): Author: Junio C Hamano 2005-05-05 16:16:54 Committer: Junio C Hamano 2005-05-05 16:16:54 Parent: fc54a9c30ccad3fde5890d2c0ca2e2acc0848fbc (Update git-apply-patch-script ...) Parent: 9e30dd7c0ecc9f10372f31539d0122db97418353 (Make git-prune-script executa ...) Parent: c4b83e618f1df7d8ecc9392fa40e5bebccbe6b5a (Do not write out new index if ...) Parent: 660265909fc178581ef327076716dfd3550e6e7b (diff-cache shows differences ...) Parent: b28858bf65d4fd6d8bb070865518ec43817fe7f3 (Update diff engine for symlin ...) Octopus merge of the following five patches. Update git-apply-patch-script for symbolic links. Make git-prune-script executable again. Do not write out new index if nothing has changed. diff-cache shows differences for unmerged paths without --cache. Update diff engine for symlinks stored in the cache. Signed-off-by: Junio C Hamano where all the parent commit ID's are clickable, because the new lines are added as part of the "comment" string, and thus the regular clickability thing will match them automatically. I think this is good. And my random-tcl-monkey-skills are clearly getting better (although it's perfectly possible that somebody who actually knows what he is doing would have done things differently). Signed-off-by: Linus Torvalds Signed-off-by: Paul Mackerras --- diff --git a/gitk b/gitk index e21d7a2..7a0d766 100755 --- a/gitk +++ b/gitk @@ -1799,9 +1799,21 @@ proc selectline {l isnew} { } $ctext insert end "\n" } - $ctext insert end "\n" + set commentstart [$ctext index "end - 1c"] - set comment [lindex $info 5] + set comment {} + foreach p $parents($id) { + set l "..." + if {[info exists commitinfo($p)]} { + set l [lindex $commitinfo($p) 0] + if {[string length $l] > 32} { + set l "[string range $l 0 28] ..." + } + } + append comment "Parent: $p ($l)\n" + } + append comment "\n" + append comment [lindex $info 5] $ctext insert end $comment $ctext insert end "\n"