Create a new manpage for the gitignore format, and reference it elsewhere
PATCH 1/1 Create a new manpage for the gitignore format, and reference it elsewhere
Only git-ls-files(1) describes the gitignore format in detail, and it does so with reference to git-ls-files options. Most users don't use the plumbing command git-ls-files directly, and shouldn't have to look in its manpage for information on the gitignore format.
Create a new manpage gitignore(5) (Documentation/gitignore.txt), and factor out the gitignore documentation into that file, changing it to refer to .gitignore and $GIT_DIR/info/exclude as used by porcelain commands. Reference gitignore(5) from other relevant manpages and documentation. Remove now-redundant information on exclude patterns from git-ls-files(1), leaving only information on how git-ls-files options specify exclude patterns and what precedence they have.
---
In this new version, I've modified the explanation and example for patterns containing a slash based on additional comments by Frank Lichtenheld.
I also updated the first example in gitignore(5) to use git-status rather than git-ls-files.
Documentation/Makefile | 2 +- Documentation/config.txt | 3 +- Documentation/git-ls-files.txt | 99 ++++------------------------- Documentation/git-read-tree.txt | 3 +- Documentation/git-status.txt | 8 +-- Documentation/gitignore.txt | 116 +++++++++++++++++++++++++++++++++++ Documentation/repository-layout.txt | 3 +- Documentation/user-manual.txt | 12 ++-- 8 files changed, 145 insertions(+), 101 deletions(-) create mode 100644 Documentation/gitignore.txt
Documentation/Makefile +1 -1
@@ -2,7 +2,7 @@ MAN1_TXT= \ $(filter-out $(addsuffix .txt, $(ARTICLES) $(SP_ARTICLES)), \ $(wildcard git-*.txt)) \ gitk.txt -MAN5_TXT=gitattributes.txt +MAN5_TXT=gitattributes.txt gitignore.txt MAN7_TXT=git.txt DOC_HTML=$(patsubst %.txt,%.html,$(MAN1_TXT) $(MAN5_TXT) $(MAN7_TXT))
Documentation/config.txt +2 -1
@@ -259,7 +259,8 @@ Common unit suffixes of 'k', 'm', or 'g' are supported. core.excludeFile:: In addition to '.gitignore' (per-directory) and '.git/info/exclude', git looks into this file for patterns - of files which are not meant to be tracked. + of files which are not meant to be tracked. See + gitlink:gitignore[5]. alias.*:: Command aliases for the gitlink:git[1] command wrapper - e.g.
Documentation/git-ls-files.txt +14 -85
125 lines not on this page · raw message
Documentation/git-read-tree.txt +2 -1
@@ -341,7 +341,8 @@ have finished your work-in-progress), attempt the merge again. See Also -------- -gitlink:git-write-tree[1]; gitlink:git-ls-files[1] +gitlink:git-write-tree[1]; gitlink:git-ls-files[1]; +gitlink:gitignore[5] Author
Documentation/git-status.txt +3 -5
@@ -42,11 +42,9 @@ mean the same thing and the latter is kept for backward compatibility) and `color.status.<slot>` configuration variables to colorize its output. -As for gitlink:git-add[1], the configuration variable -'core.excludesfile' can indicate a path to a file containing patterns -of file names to exclude, in addition to patterns given in -'info/exclude' and '.gitignore'. - +See Also +-------- +gitlink:gitignore[5] Author ------
Documentation/gitignore.txt new file +116 -0
116 lines not on this page · raw message
Documentation/repository-layout.txt +1 -2
@@ -155,8 +155,7 @@ info/exclude:: exclude pattern list. `.gitignore` is the per-directory ignore file. `git status`, `git add`, `git rm` and `git clean` look at it but the core git commands do not look - at it. See also: gitlink:git-ls-files[1] `--exclude-from` - and `--exclude-per-directory`. + at it. See also: gitlink:gitignore[5]. remotes:: Stores shorthands to be used to give URL and default
Documentation/user-manual.txt +6 -6
@@ -1103,12 +1103,12 @@ showing up in the output of "`git status`", etc. Git therefore provides "exclude patterns" for telling git which files to actively ignore. Exclude patterns are thoroughly explained in the -"Exclude Patterns" section of the gitlink:git-ls-files[1] manual page, -but the heart of the concept is simply a list of files which git should -ignore. Entries in the list may contain globs to specify multiple files, -or may be prefixed by "`!`" to explicitly include (un-ignore) a previously -excluded (ignored) file (i.e. later exclude patterns override earlier ones). -The following example should illustrate such patterns: +gitlink:gitignore[5] manual page, but the heart of the concept is simply +a list of files which git should ignore. Entries in the list may contain +globs to specify multiple files, or may be prefixed by "`!`" to +explicitly include (un-ignore) a previously excluded (ignored) file +(i.e. later exclude patterns override earlier ones). The following +example should illustrate such patterns: ------------------------------------------------- # Lines starting with '#' are considered comments.
Signature · 1 line
1.5.2