git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jens Lehmann <Jens.Lehmann@web.de>
To: Ronald Weiss <weiss.ronald@gmail.com>, git@vger.kernel.org
Cc: Heiko Voigt <hvoigt@hvoigt.net>
Subject: Re: git commit vs. ignore-submodules
Date: Fri, 28 Mar 2014 17:47:08 +0100	[thread overview]
Message-ID: <5335A78C.60401@web.de> (raw)
In-Reply-To: <CABxC_L92v=cV=+e_DNa0L6f21LB0BRP5duai2h_heGJN_PRoUQ@mail.gmail.com>

Am 28.03.2014 00:36, schrieb Ronald Weiss:
> Hello.
> 
> As this is my first post to this list, let me first thank all the
> people involved in Git development - it's really a great tool.

Welcome and thanks for the feedback!

> Now to the point. Since Git 1.8 (I think), git commit command honours
> the submodules' ignore settings, configured either in .gitmodules, or
> in .git/config. That's very nice and certainly correct for "git commit
> -a", but it's less clear if one explicitely stages an updated
> submodule using git add. Git commit will ignore it anyway, if
> ignore=all is configured in .gitmodules. Maybe that's correct too, I'm
> not sure about that, but it's inconvenient in our use case, especially
> combined with the lack of --ignore-submodule parameter to git commit,
> as git status and git diff have.
> 
> We use submodules in such a way that normally we don't ever want to
> see changes in them in output of git diff and git status. So we set
> ignore=all in .gitmodules for each submodule. But occasionally, we
> need to add a new submodule, and sometimes also commit changed
> submodule. This got harder with Git 1.8, we have to "git config
> submodule.<name>.ignore none" before the commit, and "git config
> --unset ..." after.
> 
> I'd like to at least add an --ignore-submodules parameter to git
> commit. I though about posting a patch, but as I looked into the
> commit source file, I didn't see any straightforward way to implement
> it. I don't have enough free time for a deeper analysis of the
> sources, I'm sorry.
> 
> So please, let me first know, whether you could possibly accept such
> patch, and if so, then I'd really appreciate some hints on how to do
> it.

Such a patch would be very much appreciated. You might want to look
into other commands that already have the --ignore-submodules option
to get an idea how to do that. cmd_status() in builtin/commit.c
should be a good starting point.

> And also, I'd like to know git folks' opinion on whether it's OK that
> git commit with ignore=all in .gitmodules ignores submodules even when
> they are explicitely staged with git add.

No, they should be visible in status and commit when the user chose
to add them. I see if I can hack something up (as I've been bitten
myself by that recently ;-).

  reply	other threads:[~2014-03-28 16:47 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-27 23:36 git commit vs. ignore-submodules Ronald Weiss
2014-03-28 16:47 ` Jens Lehmann [this message]
2014-03-28 17:59   ` Junio C Hamano
2014-03-29 22:44   ` Ronald Weiss
2014-03-29 22:50     ` [PATCH 1/2] commit: add --ignore-submodules[=<when>] parameter Ronald Weiss
2014-03-29 23:14       ` Jens Lehmann
2014-03-30 19:48       ` Jens Lehmann
2014-03-30 23:43         ` [PATCH v2] " Ronald Weiss
2014-03-31  0:07           ` [PATCH v2.1] " Ronald Weiss
2014-03-31 18:58             ` Jens Lehmann
2014-03-31 20:37               ` Jens Lehmann
2014-03-31 21:50                 ` Ronald Weiss
2014-03-31 21:47               ` Ronald Weiss
2014-03-31 22:50                 ` Ronald Weiss
2014-03-31 23:35                   ` Ronald Weiss
2014-04-01 20:23                     ` Jens Lehmann
2014-04-01 21:59                       ` Ronald Weiss
2014-04-02 18:53                         ` Jens Lehmann
2014-04-02 19:56                           ` Ronald Weiss
2014-04-06 16:28                             ` Jens Lehmann
2014-04-07 21:46                               ` Ronald Weiss
2014-04-07 23:01                                 ` [PATCH v3 1/2] add: " Ronald Weiss
2014-04-07 23:03                                 ` [PATCH v3 2/2] commit: " Ronald Weiss
2014-04-08 18:43                                   ` Jens Lehmann
2014-04-08 20:19                                     ` Ronald Weiss
2014-04-12 22:20                                     ` Ronald Weiss
2014-04-12 22:45                                       ` [PATCH v4 1/2] add: " Ronald Weiss
2014-04-18 11:53                                         ` Jens Lehmann
2014-04-21 21:19                                           ` Ronald Weiss
2014-04-12 22:49                                       ` [PATCH v4 2/2] commit: " Ronald Weiss
2014-04-18 12:09                                         ` Jens Lehmann
2014-04-21 22:08                                           ` Ronald Weiss
2014-04-22 19:14                                             ` Jens Lehmann
2014-04-22 21:12                                               ` [PATCH v5 1/2] add: " Ronald Weiss
2014-04-23 20:25                                                 ` Eric Sunshine
2014-04-24 19:34                                                   ` [PATCH v6 " Ronald Weiss
2014-04-24 19:42                                                     ` [PATCH v6 2/2] commit: " Ronald Weiss
2014-04-22 21:13                                               ` [PATCH v5 " Ronald Weiss
2014-04-14 18:30                                       ` [PATCH v3 " Junio C Hamano
2014-04-14 20:18                                         ` Ronald Weiss
2014-04-14 21:08                                           ` Junio C Hamano
2014-04-08 18:26                                 ` [PATCH v2.1] " Jens Lehmann
2014-04-12 23:41                                   ` Ronald Weiss
2014-04-18 12:28                                     ` Jens Lehmann
2014-04-22 22:21                                       ` Ronald Weiss
2014-03-31 17:14         ` [PATCH 1/2] " Junio C Hamano
2014-03-29 22:56     ` [PATCH 2/2] status: don't ignore submodules added to index Ronald Weiss
2014-03-29 23:16       ` Jens Lehmann
2014-03-29 23:40         ` Ronald Weiss
2014-03-30  0:01           ` Ronald Weiss
2014-03-30 10:14   ` [WIP/PATCH] status/commit: always show staged submodules regardless of ignore config Jens Lehmann

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=5335A78C.60401@web.de \
    --to=jens.lehmann@web.de \
    --cc=git@vger.kernel.org \
    --cc=hvoigt@hvoigt.net \
    --cc=weiss.ronald@gmail.com \
    /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 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 NNTP newsgroup(s).