From: Junio C Hamano <gitster@pobox.com>
To: Paul Mackerras <paulus@samba.org>
Cc: Jens Lehmann <Jens.Lehmann@web.de>,
Git Mailing List <git@vger.kernel.org>
Subject: Re: [PATCH] gitk: show staged submodules regardless of ignore config
Date: Tue, 15 Apr 2014 15:34:25 -0700 [thread overview]
Message-ID: <xmqqwqeqi5n2.fsf@gitster.dls.corp.google.com> (raw)
In-Reply-To: <53444FA8.7020504@web.de> (Jens Lehmann's message of "Tue, 08 Apr 2014 21:36:08 +0200")
Jens Lehmann <Jens.Lehmann@web.de> writes:
> Currently setting submodule.<name>.ignore and/or diff.ignoreSubmodules to
> "all" suppresses all output of submodule changes for gitk. This is really
> confusing, as even when the user chooses to record a new commit for an
> ignored submodule by adding it manually this change won't show up under
> "Local changes checked in to index but not committed".
>
> Fix that by using the '--ignore-submodules=dirty' option for both callers
> of "git diff-index --cached" when the underlying git version supports that
> option.
>
> Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
> ---
I'll tentatively queue this on jl/gitk-show-added-submodule-changes
and park it on 'pu', but I'd prefer it to come to me through your
tree.
I'll be tagging 2.0.0-rc0 later this week; if you have some
accumulated changes (I saw that your public repository has an
initial vietnamese translation patch that I still do not have),
please plan to get them in by the end of next week.
Thanks.
> gitk | 13 ++++++++++---
> 1 file changed, 10 insertions(+), 3 deletions(-)
>
> diff --git a/gitk b/gitk
> index 90764e8..f6efaa6 100755
> --- a/gitk
> +++ b/gitk
> @@ -5205,11 +5205,15 @@ proc dohidelocalchanges {} {
> # spawn off a process to do git diff-index --cached HEAD
> proc dodiffindex {} {
> global lserial showlocalchanges vfilelimit curview
> - global hasworktree
> + global hasworktree git_version
>
> if {!$showlocalchanges || !$hasworktree} return
> incr lserial
> - set cmd "|git diff-index --cached HEAD"
> + if {[package vcompare $git_version "1.7.2"] >= 0} {
> + set cmd "|git diff-index --cached --ignore-submodules=dirty HEAD"
> + } else {
> + set cmd "|git diff-index --cached HEAD"
> + }
> if {$vfilelimit($curview) ne {}} {
> set cmd [concat $cmd -- $vfilelimit($curview)]
> }
> @@ -7705,7 +7709,7 @@ proc addtocflist {ids} {
> }
>
> proc diffcmd {ids flags} {
> - global log_showroot nullid nullid2
> + global log_showroot nullid nullid2 git_version
>
> set i [lsearch -exact $ids $nullid]
> set j [lsearch -exact $ids $nullid2]
> @@ -7726,6 +7730,9 @@ proc diffcmd {ids flags} {
> }
> }
> } elseif {$j >= 0} {
> + if {[package vcompare $git_version "1.7.2"] >= 0} {
> + set flags "$flags --ignore-submodules=dirty"
> + }
> set cmd [concat | git diff-index --cached $flags]
> if {[llength $ids] > 1} {
> # comparing index with specific revision
next prev parent reply other threads:[~2014-04-15 22:34 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-08 19:36 [PATCH] gitk: show staged submodules regardless of ignore config Jens Lehmann
2014-04-15 22:34 ` Junio C Hamano [this message]
-- strict thread matches above, loose matches on Subject: below --
2014-06-06 21:08 Junio C Hamano
2014-06-15 4:57 ` Paul Mackerras
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqqwqeqi5n2.fsf@gitster.dls.corp.google.com \
--to=gitster@pobox.com \
--cc=Jens.Lehmann@web.de \
--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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.