Generic VCS Interfaces
Emacs packages that provide a consistent interface to many different version control systems.
- VersionControl, or VC, is the generic version control interface that comes with Emacs. It provides a consistent interface to interact with many different version control systems, including CVS, Subversion, Git, Mercurial, Bazaar, SCCS, CSSC and RCS. This is a good choice if you use more than one system for revision control because of the consistency of its user interface.
- VcIcon displays an icon indicating the vc status of a file (up-to-date or modified with respect to the repository).
- VersionControlAlways
- VcTopDirectory automatically chdirs
vc-dir buffer to top-level directory for git/Bazaar which list files with absolute paths - VC-Jump – jump to corresponding VC status buffer
- VCUndoHistory – history for abandoned VC changes
- DistributedVersionControl is an interface to various distributed version control systems. It doesn’t come with Emacs. Currently DVC supports Git, Mercurial, Bazaar and GNU Arch. Monotone is only partially supported and Darcs support is not usable yet.
Specific VCS Interfaces
Centralized VCS
Distributed VCS (DVCS)
- AegisConfigurationManagement
- AegisMode – aegis-mode is available from Tim Potter.
- ArchVersionControl (and Bazaar) – The suggested package is Xtla, but consider DVC and VC works, too.
- Bazaar (
bzr) – There are interfaces with and without VC support. - DaRcs – There’s a VC backend available, a pcl-cvs like interface available, and a non-VC interface.
- fossil – A VC backend is under development.
- Git – Supported by VC, but git.el comes with the package and there are many other Git-specific modes.
- Mercurial (
hg) - MonoTone – Partially supported by DVC, but a mode is distributed with Monotone.
Proprietary VCS
External resources