githubglobgithub-codeowners

CODEOWNERS syntax: /foobar/** vs /foobar/


Assuming I want to enforce on some directory (e.g. foobar) on my git repository hosted on GitHub a code owner. In the CODEOWNERS file I can specify:

/foobar/** @someuser

But also this would be possible:

/foobar/ @someuser

Is there any difference between these two ways? Is it exactly the same?

Unfortunately, the documentation does not contain any description about this.


Solution

  • Two consecutive asterisks (**) in patterns matched against full pathname may have special meaning:

    Read more here: https://git-scm.com/docs/gitignore#_pattern_format

    As far as I can tell both patterns you describe do the same. Since the CODEOWNERS file works (almost) the same as .gitignore ignoring a folder will ignore all of its sub-folder. So /foobar/** and /foobar/ should be the same.