From 8b19280930eba7d66549f64344a49b3641821046 Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Sun, 7 Aug 2005 13:58:56 -0700 Subject: [PATCH] [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 --- gitk | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/gitk b/gitk index e21d7a28f1..7a0d766ee1 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"