All of lore.kernel.org
 help / color / mirror / Atom feed
* [BUG] ** glob pattern in git diff doesn't match root directory
@ 2021-04-24  2:52 Shoaib Meenai
  2021-04-24  3:31 ` Felipe Contreras
  2021-04-26  8:23 ` =?utf-8?B?w4Z2YXIgQXJuZmrDtnLDsA==?= Bjarmason
  0 siblings, 2 replies; 7+ messages in thread
From: Shoaib Meenai @ 2021-04-24  2:52 UTC (permalink / raw)
  To: git

Hi all,

When I use a `**/` glob pattern with `git diff`, it doesn't seem to
match in the root directory. The documentation for gitgnore says that a
leading `**/` should match in all directories, and I would expect it to
behave the same way for `git diff`. For example:

$ git --version
git version 2.31.1.527.g47e6f16901 # built from the `next` branch
$ mkdir /tmp/globtest && cd /tmp/globtest
$ git init
$ echo foo > foo
$ mkdir sub
$ echo subfoo > sub/foo
$ git add .
$ git commit -m 'Initial commit'
$ echo bar > foo
$ echo subbar > sub/foo
$ git --no-pager diff '**/foo'
diff --git a/sub/foo b/sub/foo
index ef7889f..2b2ab6c 100644
--- a/sub/foo
+++ b/sub/foo
@@ -1 +1 @@
-subfoo
+subbar

Only the diff to `sub/foo` is printed, whereas I'd expect the change to
the top-level `foo` to be printed as well. `git diff '**foo'` does behave
as I would expect. This also happens with a `**` in the middle of a
pattern; e.g., `sub/**/bar` will match `sub/dir/bar` but not `sub/bar`.

Am I misunderstanding how `**` should work, or is this a bug?

Thanks,
Shoaib


^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-04-27 19:58 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-24  2:52 [BUG] ** glob pattern in git diff doesn't match root directory Shoaib Meenai
2021-04-24  3:31 ` Felipe Contreras
2021-04-26  8:23   ` =?utf-8?B?w4Z2YXIgQXJuZmrDtnLDsA==?= Bjarmason
2021-04-27 19:58     ` Felipe Contreras
2021-04-26 20:45   ` Shoaib Meenai
2021-04-26  8:23 ` =?utf-8?B?w4Z2YXIgQXJuZmrDtnLDsA==?= Bjarmason
2021-04-26 20:48   ` Shoaib Meenai

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.