threads / patch / 23852

v2gitk: Show notes by default (like git log do)

Subject: [PATCH v2] gitk: Show notes by default (like git log do)

## tl;dr

2 messages between May 20, 2010 and May 30, 2010. Diffs are folded; open one to read it.

replies: 1people: 2as markdown or json

Kirill Smelkov· May 20, 2010, 09:50 UTC · lore
Starting from ~ git-1.6.6, log, show & whatchanged show notes by default.

On the other hand, gitk does not show notes by default, because under the hood it calls `git log --pretty=raw ...` to get the log, and in `git log` notes are turned off, when user specifies format or pretty settings.

Yes, it is possible to invoke `gitk --show-notes` explicitly, but since from user's perspective, gitk is gui enabled git log, it would be logical for gitk to show notes by default too for consistency.

In git, --show-notes was introduced in 66b2ed (Fix "log" family not to be too agressive about showing notes) which predates 1.6.6.2

Notes can still be supressed with `gitk --no-notes`.
Cc: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Kirill Smelkov <kirr@mns.spb.ru>
---
 gitk |   15 +++++++++++----
 1 files changed, 11 insertions(+), 4 deletions(-)
Changes since first post:
 o as suggested by Michael, removed --show-notes from do_readcommit
 o as suggested by Michael, tried to put --show-notes arg into a central place
 o --show-notes is only used for git >= 1.6.6.2 (though because $git_version
   has only 3 digits, this may turn to be actually activated only from
   git >= 1.7.0)
Show changes to gitk +11 −4
diff --git a/gitk b/gitk
index 1b0e09a..45e3380 100755
--- a/gitk
+++ b/gitk
@@ -313,6 +313,7 @@ proc start_rev_list {view} {
     global viewactive viewinstances vmergeonly
     global mainheadid viewmainheadid viewmainheadid_orig
     global vcanopt vflags vrevs vorigargs
+    global show_notes
 
     set startmsecs [clock clicks -milliseconds]
     set commitidx($view) 0
@@ -361,8 +362,8 @@ proc start_rev_list {view} {
     }
 
     if {[catch {
-	set fd [open [concat | git log --no-color -z --pretty=raw --parents \
-			 --boundary $args "--" $files] r]
+	set fd [open [concat | git log --no-color -z --pretty=raw $show_notes \
+			--parents --boundary $args "--" $files] r]
     } err]} {
 	error_popup "[mc "Error executing git log:"] $err"
 	return 0
@@ -456,6 +457,7 @@ proc updatecommits {} {
     global mainheadid viewmainheadid viewmainheadid_orig pending_select
     global isworktree
     global varcid vposids vnegids vflags vrevs
+    global show_notes
 
     set isworktree [expr {[exec git rev-parse --is-inside-work-tree] == "true"}]
     rereadrefs
@@ -508,8 +510,8 @@ proc updatecommits {} {
 	set args $vorigargs($view)
     }
     if {[catch {
-	set fd [open [concat | git log --no-color -z --pretty=raw --parents \
-			  --boundary $args "--" $vfilelimit($view)] r]
+	set fd [open [concat | git log --no-color -z --pretty=raw $show_notes \
+			--parents --boundary $args "--" $vfilelimit($view)] r]
     } err]} {
 	error_popup "[mc "Error executing git log:"] $err"
 	return
@@ -11521,6 +11523,11 @@ set NS [expr {$use_ttk ? "ttk" : ""}]
 
 set git_version [join [lrange [split [lindex [exec git version] end] .] 0 2] .]
 
+set show_notes {}
+if {[package vcompare $git_version "1.6.6.2"] >= 0} {
+    set show_notes "--show-notes"
+}
+
 set runq {}
 set history {}
 set historyindex 0
-- 
1.7.1.91.ga63a7
Paul Mackerras· May 30, 2010, 02:22 UTC · re: Kirill Smelkov · lore

Re: [PATCH v2] gitk: Show notes by default (like git log do)

On Thu, May 20, 2010 at 01:50:41PM +0400, Kirill Smelkov wrote:
Show 18 quoted lines
> Starting from ~ git-1.6.6, log, show & whatchanged show notes by default.
> 
> On the other hand, gitk does not show notes by default, because under
> the hood it calls `git log --pretty=raw ...` to get the log, and in
> `git log` notes are turned off, when user specifies format or pretty
> settings.
> 
> Yes, it is possible to invoke `gitk --show-notes` explicitly, but since
> from user's perspective, gitk is gui enabled git log, it would be
> logical for gitk to show notes by default too for consistency.
> 
> In git, --show-notes was introduced in 66b2ed (Fix "log" family not to
> be too agressive about showing notes) which predates 1.6.6.2
> 
> Notes can still be supressed with `gitk --no-notes`.
> 
> Cc: Michael J Gruber <git@drmicha.warpmail.net>
> Signed-off-by: Kirill Smelkov <kirr@mns.spb.ru>
Thanks, applied.
Paul.

← back to recent threads