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*