It's Magit! An Emacs mode for Git
Unlike Emacs's native version control support which strives to provide a unified interface to various version control systems, Magit only supports Git and can therefor take full advantage of its native features.
Magit supports GNU Emacs 23.2 or later; 24.1 or later is recommended. Magit supports Git 126.96.36.199 or later; 1.8.2 or later is recommended. These are the versions in ancient Debian oldstable.
To get started with Magit, run M-x magit-status. If you
are inside a Git repository this opens a buffer that summarizes its
status. Otherwise you are first prompted for a repository. Read the
short help for
magit-mode (C-h m in the status buffer),
make some changes to your files, then stage (s) and commit
For more details consult the Magit user manual. You can read it on the web or in Emacs with C-u C-h i magit.info.
Magit also has a website.
Emacs >=24.1 includes a facility that lets you easily download and
install packages. Using
package.el is the easiest and recommended
way to install Magit and its dependencies. If you don't want to use
it see the extended installation instructions in
The stable Magit version is available from the Marmalade
package repository. If you want to install the development version
master branch) use the Melpa repository instead.
Please note that all packages on Melpa are built from the upstream
master branch. If you generally want stable versions but the latest
Magit use Marmalade and install Magit from Git.
package.el to use one of the package repositories:
(add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/") t)
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/") t)
For details please see the website of the package repository of your choosing.
Then install Magit (and its run-time dependencies):
M-x package-install RET magit RET
If you install Magit using
package.el then dependencies are
automatically being taken care of. Otherwise you have to track down
dependencies and install them manually.
cl-libis a new library in Emacs 24.3. Like the old
clit provides various Common Lisp forms, but differs in that symbols are prefixed with
cl-. A forward compatibility
cl-libfor older versions of Emacs is available from the GNU Elpa repository. You can install it using
package.elor get it here.
git-commit-modewhich is part of the [git-modes][git-modes] repository and available as a separate package from Melpa.
git-rebase-modewhich is part of the [git-modes][git-modes] repository and available as a separate package from Melpa.
Some Magit libraries depend on third-party tools or optional git subcommands. See INSTALL.md for more information.
Magit's canonical source repository is hosted on Github.