git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Kirill Smelkov <kirr@mns.spb.ru>
To: Michael J Gruber <git@drmicha.warpmail.net>
Cc: Paul Mackerras <paulus@samba.org>, git@vger.kernel.org
Subject: Re: gitk: Show notes
Date: Wed, 12 May 2010 12:56:58 +0400	[thread overview]
Message-ID: <20100512085658.GA22938@tugrik.mns.mnsspb.ru> (raw)
In-Reply-To: <4BE96B41.7010902@drmicha.warpmail.net>

On Tue, May 11, 2010 at 04:35:45PM +0200, Michael J Gruber wrote:
> Kirill Smelkov venit, vidit, dixit 11.05.2010 10:26:
> > If in git.git I do
> > 
> >     $ git notes add -m 'This makes status significantly slower with Dokko' \
> >         ee6fc514
> > 
> > then `git log` shows the note...
> > 
> 
> because --show-notes is the default...
> 
> > ... but unfortunately gitk does not.
> 
> ... unless --pretty is given, and gitk uses --pretty.
> 
> But what is wrong with gitk --show-notes?

Sorry, you are right. I learned notes just yesterday and forgot one can
pass such options to gitk.

> If you mean to adjust gitk's default to log's current default please say
> so in the commit message. There's no need to include a longish sample
> output for that.

Ok, agree.

> Also, I don't think proc do_readcommit needs the notes. The other two
> places use $args, so it might make sense to prepend --show-notes to the
> arg list in a central place.

Right.

I've tried to rework the patch -- only I could not find a better way to
prepend --show-notes to arg, than just define $show_notes based on
$git_version and use it in 2 appropriate places.

Also, --show-notes was introduced in git-1.6.6.2, but our $git_version
is 3 digits only, so this will be really enabled for git-1.7.0 .


Thanks for the review, and maybe there is a better way to do it?

Kirill


---- 8< ----

From: Kirill Smelkov <kirr@mns.spb.ru>
Date: Tue, 11 May 2010 12:17:11 +0400
Subject: [PATCH] gitk: Show notes by default (like git log do)

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`.

Signed-off-by: Kirill Smelkov <kirr@mns.spb.ru>
---
 gitk |   15 +++++++++++----
 1 files changed, 11 insertions(+), 4 deletions(-)

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

      reply	other threads:[~2010-05-12  8:55 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-11  8:26 [PATCH] gitk: Show notes Kirill Smelkov
2010-05-11 14:35 ` Michael J Gruber
2010-05-12  8:56   ` Kirill Smelkov [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100512085658.GA22938@tugrik.mns.mnsspb.ru \
    --to=kirr@mns.spb.ru \
    --cc=git@drmicha.warpmail.net \
    --cc=git@vger.kernel.org \
    --cc=paulus@samba.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).