I have a plethora of both short and long pieces of R code that I would like to track as they evolve.
Does anyone have any recommendation or experience using version-control software with R?
I have a plethora of both short and long pieces of R code that I would like to track as they evolve.
Does anyone have any recommendation or experience using version-control software with R?
Subversion or Git would be my recommendations. I don't think the effectiveness of the versioning system depends on the source code you put in it. R shouldn't be any different from Java or C# that way.
There's nothing unique about R that would drive a version control system decision. There are many R projects hosted on Github (in Git) and on Google Code (in Mercurial or Subversion). R-Forge (http://r-forge.r-project.org/) uses SVN.
You may want to have a look at this question for some views on the modern source controlsystems: Git, Mercurial, and Bazaar.
Assuming that you will use either Git, Mercurial, or SVN, I would suggest having a look at Github. It has many very nice features for collaboration.
I personally use and strongly suggest Eclipse with the StatET plugin combined with Subclipse for subversioning.
Use
whatever your colleagues, friends, ... use --- most systems are technically equivalent and you want to foster rather than hinder collaboration
whatever is supported in the editor or IDE you use most
so as ever so often it comes down to network effects --- popular choices create more users which creates more support in tools etc.
R itself does not care. Source code is just text. Personally, I like SVN a lot and use it at home, at work, at R-Forge, on Google Code, on Sourceforge, ... R Core also uses SVN but as I said, it does not really matter. Your choice, your headaches when you need to admin or fix things.