Here is a snapshot of my list-package result related to magit:



  1. There's nothing in my init.el on marmalade, why the package from marmalade are also listed?

  2. If I run M-xpackage-installRETmagitRET, which version am I installing?

  • Do M-x rgrep RET marmalade RET * RET ~/.emacs.d/. Something will turn up.
    – Malabarba
    Dec 27, 2014 at 17:06

2 Answers 2


I have no idea why marmalade packages might be appearing in the list (assuming you are correct that your init.el does not have anything related to marmalade). As for which package gets installed, package will by default install the package with highest version number. In this case the magit package on melpa-stable (90141214) will be installed since it has the highest version.

Do understand about version comparison read the documentation of the function version= (C-hfversion=RET) which explains the algorithm used to compare versions.

  • Your explanation is quite clear. Thanks. May I ask why the melpa-stable version starts with 90, is there special meaning?
    – Nick
    Dec 27, 2014 at 13:41

May I ask why the melpa-stable version starts with 90, is there special meaning?

9014**** is bigger than 2014****. I have chosen that as a temporary solution so that users of Melpa-Stable get the stable version without having to pin Magit to Melpa-Stable. Temporary because eventually the version will go "down" to 2.1.0. The 9014**** tags are specifically for Melpa-Stable, without that the Melpa-Stable version would be 1.2.2 and that release isn't really "stable" - it is very old (only some bug fixes since 1.2.0) and contains many known issues which have been fixed on Magit's master branch a long time ago.

By the way 9014**** and 2014**** are usually build from the same commit at the tip of master. Sometimes I don't create a 9014**** tag after applying some insignificant change like a doc-string fix, then Melpa-Stable lags behind a bit.

No new development happens on master now - so it is "stable". The next release will be based on the next branch and that branch has also already been feature frozen, see Roadmap toward 2.1.0.


The presence of 0.8.1 in that list indicates that there is something wrong with your package.el installation. No Elpa repository contains that version anymore. Things to check are whether you have an ancient version of package.el laying around on your load-path and whether there are old files in ~/.emacs.d/elpa/archives/.

  • Thank you very much for your explanation on magit versions. I'm using Emacs 24.4, built from scratch. There'a a ~/.emacs.d.bak folder which contains old files. I guess Emacs won't read this folder. I should delete this foler and using git to manage these files. By the way, which package management tool do you use, the built-in package-install, or el-get?
    – Nick
    Dec 28, 2014 at 1:13
  • Neither, I am using git submodules. I had some tools to do it but they have bit rotten and so I do it mostly by hand, which isn't as bad as all the submodule haters think. For compiling I use my packed and auto-compile packages. Eventually I will resurrect my other related tools and publish them. Actually I am currently preparing for that.
    – tarsius
    Dec 28, 2014 at 14:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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