Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I just started using git, and because I tend to live in emacs, I want to use one of the emacs integration packages. Looking at this list, I see that there are a lot of packages available, but the blurbs for each of them don't explain very much about their capabilities, especially since I don't know git very well.

Which git modes for emacs have you used, and what are the advantages and disadvantages of each?

share|improve this question
up vote 5 down vote accepted

I've tried to describe these changes in my article about Emacs/Git integration.

There are following major modes: git-emacs is basic mode, that provides access to most of commands, but sometime not so handy in use. Egg - good mode, but not actively developed (imho). Magit - is most advanced comparing to other modes, and has modular architecture to extend it, so it possible to add different extensions, such as git-svn, etc. And it developed very actively with good community, documentation, etc.

All other modes are mostly add-ons to existing modes, or implement only limited functionality, that often available in other modes (for example, gitsum's functionality is available in magit)

share|improve this answer

I started with egg as it was said it's a fork of magit with some "extra" features. It was quite good but some operations like clone, push, and pull had to be done using shell commands.

Then recently I've turned to magit because I've found out that it has nice handling of pushing and pulling. It reports what changes have to be pushed, and if some interaction occurred with a remote repository it reports that some changes are yet to fetch. Also it seems to be still under active development as opposite to egg which seems to be abandoned.

I'm quite happy with magit now, but I still sometimes fall back to the command line because I'm still learning it. Also I'm not an expert in git itself because I started to use it only a year ago.

share|improve this answer
Yes, in some days, Egg was better, because magit's development was staled. But last 2 years, magit's development is very active... – Alex Ott Sep 9 '11 at 13:42
I essentially never push or pull, just stage and commit. Would you still recommend magit if I would never use the network features? – Dan Sep 10 '11 at 2:57
Well, egg seems to have nicer log tree than magit. Also the major keybindings are visible right in front of you. I have found myself checking out C-h m quite often in magit. This problem will disappear when I learn to use it, I hope. So for start egg is nicer, then I thing you will turn to magit. (This path looks exactly like mine :) ) – Rajish Sep 11 '11 at 9:15

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.