Next: Projects, Up: Maintaining [Contents][Index]
A version control system is a program that can record multiple versions of a source file, storing information such as the creation time of each version, who made it, and a description of what was changed.
The Emacs version control interface is called VC. VC commands work with several different version control systems; currently, it supports Bazaar, CVS, Git, Mercurial, Monotone, RCS, SRC, SCCS/CSSC, and Subversion. Of these, the GNU project distributes CVS, RCS, and Bazaar.
VC is enabled automatically whenever you visit a file governed by a
version control system. To disable VC entirely, set the customizable
variable vc-handled-backends to nil
(see Customizing VC).
To update the VC state information for the file visited in the
current buffer, use the command vc-refresh-state. This command
is useful when you perform version control commands outside Emacs
(e.g., from the shell prompt), or if you put the buffer’s file under a
different version control system, or remove it from version control
entirely.
| • Introduction to VC | How version control works in general. | |
| • VC Mode Line | How the mode line shows version control status. | |
| • Basic VC Editing | How to edit a file under version control. | |
| • Log Buffer | Features available in log entry buffers. | |
| • Registering | Putting a file under version control. | |
| • Old Revisions | Examining and comparing old versions. | |
| • VC Change Log | Viewing the VC Change Log. | |
| • VC Undo | Canceling changes before or after committing. | |
| • VC Ignore | Ignore files under version control system. | |
| • VC Directory Mode | Listing files managed by version control. | |
| • Branches | Multiple lines of development. | |
| • Miscellaneous VC | Various other commands and features of VC. | |
| • Customizing VC | Variables that change VC’s behavior. |
Next: Projects, Up: Maintaining [Contents][Index]