Stage individual lines or hunks of a file and commit them without leaving Emacs
Resolve merge conflicts interactively inside your editor using Magits diff interface
View and navigate your full repository commit history inside Emacs with keyboard shortcuts
Rebase, cherry-pick, and manage branches entirely from the keyboard without switching to a terminal
Requires a working Emacs installation, install via MELPA or NonGNU ELPA package manager.
Magit is a Git client built directly into the Emacs text editor. Rather than switching to a separate application or running Git commands in a terminal, Emacs users can manage their entire version control workflow inside the same editor where they write code. The project describes itself as a "Git porcelain," meaning it presents Git's functionality through a polished, user-facing layer rather than exposing raw commands. The key idea is that almost everything displayed in Magit's interface is also something you can act on by pressing a key. You can stage individual lines of a file, commit, push, pull, rebase, resolve merge conflicts, view history, and perform dozens of other Git operations without leaving Emacs or typing a full Git command. The interface is text-based, matching Emacs's overall style, but it organizes information in a way that makes common tasks faster than either a graphical Git client or the command line for many experienced users. Magit has been actively developed for many years, with a large and enthusiastic user base. It is maintained by a small team, currently led by Jonas Bernoulli, who started the project alongside Marius Vollmer. Development is funded partly through donations, and the README asks users who find it useful to contribute financially given the gap between the number of users and the number of maintainers. The project is installed through Emacs package managers like MELPA or NonGNU ELPA, and has packages available in various Linux distribution repositories as well. It comes with a detailed manual, a FAQ, and introductory articles and screencasts for people new to it. No prior deep knowledge of Emacs is required to use Magit, though familiarity with Emacs basics helps.
← magit on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.