Message ID | 2eda83517ebad39e14dca9d86b9dc2e0d32e37ef.1551938421.git.liu.denton@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | make git-clean.txt more precise | expand |
Denton Liu <liu.denton@gmail.com> writes: > -e <pattern>:: > --exclude=<pattern>:: > - In addition to those found in .gitignore (per directory) and > - $GIT_DIR/info/exclude, also consider these patterns to be in the > - set of the ignore rules in effect. > + Use the exclude pattern in addition to those found in > + `.gitignore` and similar files (see linkgit:gitignore[5]). > > -x:: > - Don't use the standard ignore rules read from .gitignore (per > - directory) and $GIT_DIR/info/exclude, but do still use the ignore > + Don't use the standard ignore rules read from `.gitignore` and > + similar files (see linkgit:gitignore[5]), but do still use the ignore > rules given with `-e` options. This allows removing all untracked > files, including build products. This can be used (possibly in > conjunction with 'git reset') to create a pristine I do agree with the direction to abandon the attempt to be exhaustive, which has failed us and will fail. I am not sure if ".gitignore and similar files" is a good phrasing, though. Don't use the standard ignored rules (see linkgit:gitignore[5]), but use the ignore rules given with `-e` options from the command line. perhaps? I dunno. A related tangent. "git add --help" also has this bit. CONFIGURATION ------------- The optional configuration variable `core.excludesFile` indicates a path to a file containing patterns of file names to exclude from git-add, similar to $GIT_DIR/info/exclude. Patterns in the exclude file are used in addition to those in info/exclude. See linkgit:gitignore[5]. I do not think the omission of per-directory .gitignore from this description is because the description predates the feature (which is the reason why "git clean" doc does not mention, by the way), but this probably needs a simliar treatment. Or perhaps this configuration section should just be removed (or moved to gitignore(5)), as it is not specific to "git add".
On Thu, 7 Mar 2019 at 07:57, Junio C Hamano <gitster@pobox.com> wrote: > > Denton Liu <liu.denton@gmail.com> writes: > > > + Use the exclude pattern in addition to those found in > > + `.gitignore` and similar files (see linkgit:gitignore[5]). > I do agree with the direction to abandon the attempt to be > exhaustive, which has failed us and will fail. I am not sure if > ".gitignore and similar files" is a good phrasing, though. > > Don't use the standard ignored rules (see linkgit:gitignore[5]), > but use the ignore rules given with `-e` options from the > command line. > > perhaps? I dunno. Yeah, I like "the standard ignore rules" more than my original suggestion. Hmm, I now see you wrote "the standard ignore/D/ rules" -- I believe that's a typo. Martin
Martin Ågren <martin.agren@gmail.com> writes: > suggestion. Hmm, I now see you wrote "the standard ignore/D/ rules" -- I > believe that's a typo. Thanks for spotting. Yup, that is a typo.
diff --git a/Documentation/git-clean.txt b/Documentation/git-clean.txt index 03056dad0d..d251ef9dd2 100644 --- a/Documentation/git-clean.txt +++ b/Documentation/git-clean.txt @@ -55,13 +55,12 @@ OPTIONS -e <pattern>:: --exclude=<pattern>:: - In addition to those found in .gitignore (per directory) and - $GIT_DIR/info/exclude, also consider these patterns to be in the - set of the ignore rules in effect. + Use the exclude pattern in addition to those found in + `.gitignore` and similar files (see linkgit:gitignore[5]). -x:: - Don't use the standard ignore rules read from .gitignore (per - directory) and $GIT_DIR/info/exclude, but do still use the ignore + Don't use the standard ignore rules read from `.gitignore` and + similar files (see linkgit:gitignore[5]), but do still use the ignore rules given with `-e` options. This allows removing all untracked files, including build products. This can be used (possibly in conjunction with 'git reset') to create a pristine
In the git-clean documentation, -x and -e documented .gitignore, $GIT_DIR/info/excludes but neglected to mention the file pointed to by core.excludesFile. Remove specific list of files and, instead, reference gitignore(5) documentation so that information is consolidated and the git-clean documentation is more precise. Reported-by: Robert P. J. Day <rpjday@crashcourse.ca> Helped-by: Martin Ågren <martin.agren@gmail.com> Signed-off-by: Denton Liu <liu.denton@gmail.com> --- Documentation/git-clean.txt | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-)