[Gllug] Mercurial or Subversion for single user?

James Courtier-Dutton james.dutton at gmail.com
Tue Mar 23 20:52:41 UTC 2010


On 23 March 2010 00:13, gvim <gvimrc at googlemail.com> wrote:
> I'm looking to start using a revision control system for my work which usually involves:
>
> - Work at home on code project
> - rsync to laptop
> - Take project away on laptop at weekend
> - Return and rsync back to desktop
>
> Subversion, Git and Mercurial seem to be the most popular but a cursory glance at Git suggests it's well beyond what I need so that leaves Subversion and Mercurial. Subversion is client/server whereas Mercurial is distributed but the distinction may not be relevant in a single-user scenario. I read Subversion has/had some renaming issues but didn't delve into it too deeply.
>
> So, what would be the best option. I'm inclined to go with Mercurial at this stage.
>

They are all aimed at a slightly different audience.
svn is old now, and therefore works well with tools like eclipse and windows.
svn is a good improvement over cvs.
svn is client/server model.

git and mercurial are aimed at a more collaborative audience with
multiple developers all contributing so they have better methods for
resolving conflicts.
mercurial is aimed more at the developer, whereas git is aimed more at
the manager.
So, I think mercurial is probably your best bet.
The major bonus that git gives is it lets a manager pick and choose
patches from a large pool of potential patches whereas, for example
svn, one has to patch in the correct order or things go wrong. Merging
is much more difficult with svn than git.
I have used all three a lot, and tend to prefer git now, but only
because a majority of the people I work with also use git.
git does have a very nice simple integrity assurance method. The
filename of the patch is the sha1 hash of the patch itself.
So, it is very easy to ensure that no bit flips have happened anywhere
in the code base or that some email program has modified the line
feeds of the patch.
I don't think there is a lot of difference really with both git and mercurial.
I watched Linus and Matt side by side challenging each other to do
certain tasks. git was quicker at some things, hg was quicker at
others.
But if I had to choose between svn and mercurial, hg would win even
for a single developer project.
So, in summary, I would support your choice of using HG.

Kind Regards

James
-- 
Gllug mailing list  -  Gllug at gllug.org.uk
http://lists.gllug.org.uk/mailman/listinfo/gllug




More information about the GLLUG mailing list