Re: Bad git log behavior with multiple glob path arguments

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Mar 5, 2014 at 12:56 PM, Jeremy Nickurak <jeremy@xxxxxxxxxxx> wrote:
> git log seems to understand globs in the last path argument, and the
> last path argument only. I didn't see anything in the git log man page
> expressly saying this was to be expected, but it does seem like it
> ought to work for all the arguments or none of them.

What version did you use? We have a fix in the same area,
e4ddb05 (tree_entry_interesting: match against all pathspecs -
2014-01-25), and it's in v1.8.5.5 and v1.9.0

> Here's a little shell script I ended up using to convince myself I
> wasn't going crazy. I'd expect the same output for all of the git log
> test, since they all specify (either with globs or not) all the files
> added to the repository. Alternatively, if globs aren't expected to
> work, I'd at least expect all the glob tests to return nothing.
>
> Note that glob matching doesn't seem to occur unless '--' is included.

do you mean "git log" does not run at all and complains about
disambiguation, or it runs but nothing is filtered?

> I'm not exactly clear on why that is.
>
> #!/bin/sh
>
> TESTREPO="$(pwd)/bad-glob-test-repo"
>
> rm  -rf "$TESTREPO"
>
> echo "Running tests in $TESTREPO"
> mkdir "$TESTREPO"
> cd "$TESTREPO"
> mkdir subdira
> mkdir subdirb
> mkdir subdirc
>
> git init
> echo a > subdira/file.txt
> echo b > subdirb/file.txt
> echo c > subdirc/file.txt
>
> git add subdira/file.txt
> git commit -m 'a'
>
> git add subdirb/file.txt
> git commit -m 'b'
>
> git add subdirc/file.txt
> git commit -m 'c'
>
> echo Glob Test 1: git log --oneline -- 'subdira/*.txt' 'subdirb/*.txt'
> 'subdirc/*.txt'
> git log --oneline -- 'subdira/*.txt' 'subdirb/*.txt' 'subdirc/*.txt'
>
> echo Glob Test 2: git log --oneline -- 'subdira/*.txt' 'subdirc/*.txt'
> 'subdirb/*.txt'
> git log --oneline -- 'subdira/*.txt' 'subdirc/*.txt' 'subdirb/*.txt'
>
> echo Glob Test 3: git log --oneline -- 'subdirb/*.txt' 'subdira/*.txt'
> 'subdirc/*.txt'
> git log --oneline -- 'subdirb/*.txt' 'subdira/*.txt' 'subdirc/*.txt'
>
> echo Glob Test 4: git log --oneline -- 'subdirb/*.txt' 'subdirc/*.txt'
> 'subdira/*.txt'
> git log --oneline -- 'subdirb/*.txt' 'subdirc/*.txt' 'subdira/*.txt'
>
> echo Glob Test 5: git log --oneline -- 'subdirc/*.txt' 'subdira/*.txt'
> 'subdirb/*.txt'
> git log --oneline -- 'subdirc/*.txt' 'subdira/*.txt' 'subdirb/*.txt'
>
> echo Glob Test 6: git log --oneline -- 'subdirc/*.txt' 'subdirb/*.txt'
> 'subdira/*.txt'
> git log --oneline -- 'subdirc/*.txt' 'subdirb/*.txt' 'subdira/*.txt'
>
> echo Explicit Test 1: git log --oneline -- 'subdira/file.txt'
> 'subdirb/file.txt' 'subdirc/file.txt'
> git log --oneline -- 'subdira/file.txt' 'subdirb/file.txt' 'subdirc/file.txt'
>
> echo Explicit Test 2: git log --oneline -- 'subdira/file.txt'
> 'subdirc/file.txt' 'subdirb/file.txt'
> git log --oneline -- 'subdira/file.txt' 'subdirc/file.txt' 'subdirb/file.txt'
>
> echo Explicit Test 3: git log --oneline -- 'subdirb/file.txt'
> 'subdira/file.txt' 'subdirc/file.txt'
> git log --oneline -- 'subdirb/file.txt' 'subdira/file.txt' 'subdirc/file.txt'
>
> echo Explicit Test 4: git log --oneline -- 'subdirb/file.txt'
> 'subdirc/file.txt' 'subdira/file.txt'
> git log --oneline -- 'subdirb/file.txt' 'subdirc/file.txt' 'subdira/file.txt'
>
> echo Explicit Test 5: git log --oneline -- 'subdirc/file.txt'
> 'subdira/file.txt' 'subdirb/file.txt'
> git log --oneline -- 'subdirc/file.txt' 'subdira/file.txt' 'subdirb/file.txt'
>
> echo Explicit Test 6: git log --oneline -- 'subdirc/file.txt'
> 'subdirb/file.txt' 'subdira/file.txt'
> git log --oneline -- 'subdirc/file.txt' 'subdirb/file.txt' 'subdira/file.txt'
>
> --
> Jeremy Nickurak -= Email/XMPP: -= jeremy@xxxxxxxxxxx =-
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



-- 
Duy
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]