Links
Snippets
# Set user global git ignore patterns file. git config --global core.excludesfile $HOME/ck/customize/git/core.excludesfile
Sample file.
# Refer http://www.kernel.org/pub/software/scm/git/docs/gitignore.html # # The following comment text has been copied from the url above. # # A gitignore file specifies intentionally untracked # files that git should ignore. Note that all the # gitignore files really concern only files that are not # already tracked by git; in order to ignore uncommitted # changes in already tracked files, please refer to the # git update-index --assume-unchanged documentation. # # Each line in a gitignore file specifies a pattern. # When deciding whether to ignore a path, git normally # checks gitignore patterns from multiple sources, with # the following order of precedence, from highest to # lowest (within one level of precedence, the last # matching pattern decides the outcome): # # * Patterns read from the command line for those # commands that support them. # * Patterns read from a .gitignore file in the same # directory as the path, or in any parent directory, # with patterns in the higher level files (up to the # toplevel of the work tree) being overridden by # those in lower level files down to the directory # containing the file. These patterns match relative # to the location of the .gitignore file. A project # normally includes such .gitignore files in its # repository, containing patterns for files # generated as part of the project build. # * Patterns read from $GIT_DIR/info/exclude. # * Patterns read from the file specified by the # configuration variable core.excludesfile. # # Which file to place a pattern in depends on how the # pattern is meant to be used. Patterns which should be # version-controlled and distributed to other # repositories via clone (i.e., files that all # developers will want to ignore) should go into a # .gitignore file. Patterns which are specific to a # particular repository but which do not need to be # shared with other related repositories (e.g., # auxiliary files that live inside the repository but # are specific to one user's workflow) should go into # the $GIT_DIR/info/exclude file. Patterns which a user # wants git to ignore in all situations (e.g., backup or # temporary files generated by the user's editor of # choice) generally go into a file specified by # core.excludesfile in the user's ~/.gitconfig. # # The underlying git plumbing tools, such as # git-ls-files and git-read-tree, read gitignore # patterns specified by command-line options, or from # files specified by command-line options. Higher-level # git tools, such as git-status and git-add, use # patterns from the sources specified above. # # Patterns have the following format: # # * A blank line matches no files, so it can serve # as a separator for readability. # * A line starting with # serves as a comment. # * An optional prefix ! which negates the pattern; # any matching file excluded by a previous pattern # will become included again. If a negated pattern # matches, this will override lower precedence # patterns sources. # * If the pattern ends with a slash, it is removed # for the purpose of the following description, but # it would only find a match with a directory. In # other words, foo/ will match a directory foo and # paths underneath it, but will not match a regular # file or a symbolic link foo (this is consistent # with the way how pathspec works in general in # git). # * 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. # * Otherwise, git treats the pattern as a shell # glob suitable for consumption by fnmatch(3) with # the FNM_PATHNAME flag: wildcards in the pattern # will not match a / in the pathname. # For example, "Documentation/*.html" matches # "Documentation/git.html" but not # "Documentation/ppc/ppc.html". # A leading slash matches the beginning of the # pathname; for example, "/*.c" matches # "cat-file.c" but not "mozilla-sha1/sha1.c". # My ignore patterns. # Emacs byte-compiled files and desktop files, etc. *.elc emacs-desktop .emacs.desktop.lock # Python byte-compiled files. *.pyc *.pyc-2.4 *.pyc-2.5 *.pyc-2.6 *.pyc-2.7 *.pyc-3.0 # Backups. *.bak \#*# *.*~ # Temp files. *.tmp *.swp # Mac related files. .DS_Store Desktop\ DB Desktop\ DF # VCS stuff. .svn # Tags. tags etags TAGS ETAGS PYSMELLTAGS # Lock files .lock*