Special Version Control Files
The following is a list of VCS-specific files that one may find in the working directories of common version control systems. This list is useful for, say, knowing what files to ignore when traversing a project directory.
Did I leave anything out? Feel free to send a pull request.
VCS | File/Directory | Purpose | Documentation |
---|---|---|---|
Git | .git/ | Repository data | gitrepository-layout(5) |
.gitattributes | Defines per-path attributes | gitattributes(5) | |
.gitignore | Lists files to exclude from version control | gitignore(5) | |
.gitmodules | Defines submodules | gitmodules(5) | |
.mailmap | Maps names & e-mails to canonical values | gitmailmap(5) | |
Mercurial | .hg/ | Repository data | wiki:FileFormats |
.hgignore | Lists files to exclude from version control | hgignore(5) | |
.hgsigs | Contains changeset signatures from the GPG extension | — | |
.hgtags | Defines tags | — | |
Darcs | _darcs/ | Repository data | — |
.binaries | Lists files to treat as binary [1] | Manual | |
.boring | Lists files to exclude from version control [1] | Manual | |
Bazaar | .bzr/ | Repository data | — |
.bzrignore | Lists files to exclude from version control | bzr ignore | |
Subversion | .svn/ or _svn/ [2] | Local copy of repository data [3] | |
CVS | CVS/ | Local copy of repository data (one per directory) | Manual |
RCS | filename,v | Version history for filename | Manual |
RCS/ | Conventional directory for storing *,v files | — |
[1] | (1, 2) Darcs normally stores its binaries file and boring file inside the _darcs/ directory, but it is possible to use any file under version control in their place; the names listed here are the conventional names for such files. |
[2] | For compatibility with ASP.NET, Subversion will use the name _svn instead of .svn if the SVN_ASP_DOT_NET_HACK environment variable is defined. |
[3] | Prior to version 1.7, Subversion placed a .svn/_svn directory in every subdirectory of the working directory under version control. |