Regression in `git add' in 1.7's 48ffef966c with a wildcard in .gitignore

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Regression in `git add' in 1.7's 48ffef966c with a wildcard in .gitignore

Ævar Arnfjörð Bjarmason
I've discovered a regression in git-add the 1.7 release which I can't
see reported anywhere. It was introduced in
48ffef966c762578eb818c0c54a7e11dd054f5db by Junio C Hamano at Fri Jan
8 23:05:41 2010.

The problem is that when you have a .gitignore file with * in it
git-add will only complain that you're trying to add ignored files if
they're in the top level of your repository, for files in
subdirectories it now just silently fails:

    $ mkdir test && cd test && git init
    $ echo "*" > .gitignore
    $ mkdir directory && touch foo directory/foo

So far so good, now if I try to add 'foo' I get an error from both 1.6 and 1.7:

    $ git add foo
    The following paths are ignored by one of your .gitignore files:
    foo

But 1.7 just silently fails to add directory/foo to the index:

    $ git add directory/foo
    $ echo $?
    0

1.6 however does the right thing:

    $ git add directory/foo
    The following paths are ignored by one of your .gitignore files:
    directory/foo
    $ echo $?
    128

A test script / bisect script I used is available at
git://github.com/avar/git-add-fail.git I couldn't figure out how to
turn it into a Git test.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

Re: Regression in `git add' in 1.7's 48ffef966c with a wildcard in .gitignore

MichaelJGruber
Ævar Arnfjörð Bjarmason venit, vidit, dixit 08.03.2010 18:08:

> I've discovered a regression in git-add the 1.7 release which I can't
> see reported anywhere. It was introduced in
> 48ffef966c762578eb818c0c54a7e11dd054f5db by Junio C Hamano at Fri Jan
> 8 23:05:41 2010.
>
> The problem is that when you have a .gitignore file with * in it
> git-add will only complain that you're trying to add ignored files if
> they're in the top level of your repository, for files in
> subdirectories it now just silently fails:
>
>     $ mkdir test && cd test && git init
>     $ echo "*" > .gitignore
>     $ mkdir directory && touch foo directory/foo

Could this possibly be fixed by 13bb0ce (builtin-add: fix exclude
handling, 2010-02-28) which is on pu?

Michael
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

Re: Regression in `git add' in 1.7's 48ffef966c with a wildcard in .gitignore

Junio C Hamano
In reply to this post by Ævar Arnfjörð Bjarmason
I think this is the same one as what we discussed earlier.  Does 13bb0ce
(builtin-add: fix exclude handling, 2010-02-28) that is already queued in
'pu' help?


--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

Re: Regression in `git add' in 1.7's 48ffef966c with a wildcard in .gitignore

Ævar Arnfjörð Bjarmason
In reply to this post by MichaelJGruber
On Mon, Mar 8, 2010 at 20:06, Michael J Gruber <[hidden email]> wrote:
> Ævar Arnfjörð Bjarmason venit, vidit, dixit 08.03.2010 18:08:
> Could this possibly be fixed by 13bb0ce (builtin-add: fix exclude
> handling, 2010-02-28) which is on pu?

Yes. I just compiled pu and the issue with git-add is indeed fixed in
13bb0ce, thanks.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html