Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Emacs Got Git. This is a clone of Marius's excellent magit. Egg is an emacs interface to git.
Emacs Lisp Makefile
Pull request Compare This branch is 80 commits ahead of bogolisk:master.
Latest commit 4998941 @byplayer add melpa badge


Egg (Emacs Got Git).



Egg is an Emacs interface to git. It's a suite composed of a minor-mode and various special-buffers presenting different UIs to help the user performing many git operations.

  • egg-minor-mode: providing git-specific vc-look-alike interface including similar key-bindings, a minor-mode menu and history annotations (blame).
  • egg's status-buffer:
    • index manipulation/commit preparation
    • interactive rebase stepping
    • merge conflict resolution
    • stashing work-in-progress
    • adding ignore pattern
    • staging new files
    • ediff or ediff3 launching. (e.g. 3-way ediff of work-dir/INDEX/HEAD, 3-way ediff of work-dir/theirs/ours)
  • egg's log-buffer
    • browse repo's history and reflogs
    • ref (tag, branch, etc) creation and deletion
    • push and fetch
    • start merge/rebase/interactive-rebase session
    • anchor HEAD (reset)
    • search history (pickaxe), grep commit message.
    • compare revisions
  • egg's file-log-buffer: restricted version of the log-buffer, used to browse history of a single file.
  • egg's query:commit-buffer: restricted variation of the log-buffer, used to browse history-search's results (pickaxe or message grep)
  • egg-grep: a compile-mode which can grep files in non-checkout git revisions.
  • egg's commit-log-edit buffer: used to compose the commit-message for the upcoming commit. it can do some minor index manipulation. gpg-signature can also be enabled.
  • egg's tag:msg-buffer: used to compose the message of an annotated tag. gpg-signature can also be enabled.
  • egg's diff-buffer: used to view the delta between file or repo revisions.


The design of the status-buffer Egg was borrowed/stolen from Magit. Egg, however has much more functionalities than the status buffer.


Magit is an interface to the version control system Git, implemented by Marius Voller. His code at:

Something went wrong with that request. Please try again.