threads / discuss / 48027

submodule.<name>.ignore vs git add -u

Subject: submodule.<name>.ignore vs git add -u

## tl;dr

2 messages between Mar 12, 2018 and Mar 15, 2018.

replies: 1people: 2as markdown or json

Miklos Vajna· Mar 12, 2018, 15:59 UTC · lore
Hi,

Let's say I have a fairly simple submodule setup where I do 'git checkout' inside the submodule to check out a different commit, so the outer repo 'git diff' shows a submodule update.

In that case
        git config submodule.<name>.ignore all

makes 'git diff' or 'git commit -a' ignore the change in the outer repo, but not 'git add -u'.

Reading the git-config documentation if this is intentional behavior, I'm a bit confused. It specifies that:

- "git status" and the diff family: handle this setting
- git submodule commands: ignore this setting

So that about 'git add -u', is it expected that it ignores this setting as well?

I guess either the doc should say 'git add -u' doesn't handle this setting or 'git add -u' should handle it. Happy to try to make a patch that does the later, but I though better ask first. :-)

Thanks,
Miklos
Heiko Voigt· Mar 15, 2018, 14:28 UTC · re: Miklos Vajna · lore

Re: submodule.<name>.ignore vs git add -u

Hi,
On Mon, Mar 12, 2018 at 04:59:25PM +0100, Miklos Vajna wrote:
Show 23 quoted lines
> Let's say I have a fairly simple submodule setup where I do 'git
> checkout' inside the submodule to check out a different commit, so the
> outer repo 'git diff' shows a submodule update.
> 
> In that case
> 
>         git config submodule.<name>.ignore all
> 
> makes 'git diff' or 'git commit -a' ignore the change in the outer repo,
> but not 'git add -u'.
> 
> Reading the git-config documentation if this is intentional behavior,
> I'm a bit confused. It specifies that:
> 
> - "git status" and the diff family: handle this setting
> - git submodule commands: ignore this setting
> 
> So that about 'git add -u', is it expected that it ignores this setting
> as well?
> 
> I guess either the doc should say 'git add -u' doesn't handle this
> setting or 'git add -u' should handle it. Happy to try to make a patch
> that does the later, but I though better ask first. :-)
Have a look here for a previous discussion.
https://public-inbox.org/git/20131204221659.GA7326@sandbox-ub/

I think I never got around finishing those patches, because the discussion died and there was no reply from the original poster asking for this.

Maybe you could have a look at my original branch and whether that would be the behavior you expect. I had a look into porting those patches to the current master, but there are still some test failures.

You can see and test my current WIP branch here:
https://github.com/hvoigt/git/commits/hv/fix_ignore_all_submodules_update1
Cheers Heiko

← back to recent threads