I'm looking for a simple version control system. I'm the only programmer in my team and I would be the only one who is making changes to files.

It gets complicated when the inputs change and I have to branch from the main source code into two (most times) versions - this will provide two different functionality.

I have searched a lot and found the following:

  1. Emacs has VC which can do version control and it supports - RCS,CVS,SVN Git etc. I read the VC portion of the manual - but could not help me create a simple directory with files in it.

    When I created the VC backend as RCS - it is looking for a file "RCS" the same is true with SVN too

  2. Magit is a package for Emacs which can do version control management.
    I started running into problems during installation, it was looking for a git directory - which for some reason was not there and I ended up with errors during Magit installation.

(Note: I had installed Magit through MELPA and I had installed all the requires packages for the Magit before the actual Magit installation)

I adjust need an example on how to set this up

  • 1
    This are really two questions: 1. Should I use Magit/Git or VC/<some-version-control-sytem>? and 2. Magit installation failed, what went wrong? As Magit's maintainer I am biased and think you should use Git (the best version control system) and Magit (the best interface to Git). As for the other question; we need more information from you to help you out, like literal error messages you encountered. No Git repository is required during installation of Magit, so its strange you get errors about that. Also it is not necessary to install dependencies manually, package.el takes care of that.
    – tarsius
    Sep 27, 2016 at 17:49
  • 1
    You might also want to consult the official installation instructions: magit.vc/manual/magit/Installation.html.
    – tarsius
    Sep 27, 2016 at 17:50
  • Magit is a user interface to Git (which is the VCS). You can use Git with or without Magit; you cannot use Magit without Git. Likewise for the vc library -- it is an interface to various VCS. So firstly set up a VCS for your project, and then point Emacs at it.
    – phils
    Sep 27, 2016 at 19:21

1 Answer 1


It's important to note that the VC features of emacs are interfaces to an underlying Version Control System, rather than a replacement for that. Whichever one you choose you will need some level of proficiency in, even if that level is "just learning".

Git would be a serviceable choice. There are plenty of tutorials out there, and it is widely used. Magit is an amazing Emacs extension. But again, passing knowledge of what Git is and how it works will be beneficial.

A short answer to your question is that you'll need to git init from the command line in your source directory. This does however open up a lot more questions like: now that you have it initialized, how do you add your files to the repository? How do you commit? How do you branch?

  • You need to learn how to use git. Sep 27, 2016 at 20:07
  • that was the point I was making. Sep 27, 2016 at 20:28
  • 1
    Sorry, I thought you were the OP :) Sep 27, 2016 at 20:31

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.