Gitignore documentation

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

 



Hello,

I was reading the gitignore documentation
(https://git-scm.com/docs/gitignore), especially the following
paragraph:

         "If the pattern does not contain a slash /, Git treats it as
a shell glob pattern and checks for a match against the pathname
relative to the location of the .gitignore file (relative to the
toplevel of the work tree if not from a .gitignore file)."

>From that paragraph I understand that if I have the following
directory structure:

        .gitignore
        a
            f

(the root of the repository contains the file .gitignore and the
folder a, while the file f is inside folder a)
where the file .gitignore contains only the pattern f, when file "f"
is tested whether it should be ignored or not, the pattern f in
.gitignore is matched against the "pathname relative to the location
of the .gitignore file" (which is a/f). Because "f" (the pattern) does
not match "a/f" (the pathname relative to the location of .gitignore),
the file "f" should not be ignored. However, if I test this scenario,
git ignores the file (this behaviour is consistent with the examples
from the rest of the documentation and other explanations on the
internet).

I looked at the history of the "Documentation/gitignore.txt" file on
the github repository and I saw that initially the paragraph looked
like this:

        "If the pattern does not contain a slash '/', git treats it as
a shell glob pattern and checks for a match against the pathname
without leading directories."

This old version of the paragraph is consistent with git's current behaviour.

Then I saw the following commit
https://github.com/git/git/commit/81c13fde379c46cad6b6e4a03ed7ee4f686c030f#diff-7fea460d44f92f185e7add8aa5620305,
which changed that paragraph to the current version.
However, I cannot see how the two wordings (the original one and the
current one) are the same.

I would really appreciate if someone could explain how to read the
current version of the paragraph such that it is consistent with git's
behaviour.



Thank you,
Razvan Maris



[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]

  Powered by Linux