Ask YC: What revision control system are you using?
I'd like to hear what you're using and why you like it. I have a hunch that we're going to be using more distributed version control than your average group, just checking. So...
Git? Bazaar? Subversion? TortiseSVN? Mercurial? CVS? Perforce? or "Revision control is for weak need mortals. I etch code directly on silicons wafers like the hacker god that I am!"
Talk amongst yourselves.
(
27 comments
| 5 points
| on HN
)
git
small, fast, in active development and cross platform. Fast to install, less documentation. Originally I used cvs with a p-server which worked nicely allowing me to distribute dev & other files across other machines. But was a begger to install. Then I tried svn but never really liked a) lack of clients, confusing setup documentation.
Using Git now as I wanted a SCM for a new project and it was the fastest to install & use. Git also has the advantage of doing the same as svn but with less keystrokes. [1] Can also be used individually as a tool as well as a group. [2]
Having said that svn, cvs, rcs are still usable just not optimal for me.
[0] http://marc.info/?l=git&m=116129092117475
[1] http://www.kernel.org/pub/software/scm/git/docs/tutorial.htm...
[2] http://www.kernel.org/pub/software/scm/git/docs/everyday.htm...
The Linus Torvalds Google talk is great fun [0], but it may not actually convince you -- it'll just goad you. The Randall Schwartz talk [2] is more practical, and I recommend it. Finally, the Peepcode screencast [3] is worth the $9 -- it gives examples of git in action, and a handy cheat sheet. It's what finally pushed me over the edge into full-blown fanboy mode.
[0] http://video.google.com/videoplay?docid=-2199332044603874737
[1] http://video.google.com/videoplay?docid=-3999952944619245780
[2] http://peepcode.com/products/git
We're using it because it's free, suits our needs fine, and is pretty much the standard these days (especially for open source projects)
p.s. you know TortiseSVN is just a Windows client for Subversion, right?
Distributed version control seems a bit like a fad to me. I admit it has some nice features, but I expect subversion to adapt the best that it doesn't already have (which isn't really all that much). They are already working on implementing local commits, which in my mind is the single biggest missing feature.
SVN is great for an individual or simple project, but sharing patches between branches is a nightmare.
I'll wait till he's shaken the bugs out until I give it a go, though, as being an early adopter gives me zero competitive advantage.
BTW, how to pronounce it, HG, or Mercurial?
instead of committing files, darcs record lets me pick and choose what changes to include as part of a patch, resulting in cleaner patches which actually encompass a logical change to the code.
i've also heard many good things about git
even though it is still pre 1.0, a lot of fixes are going into it, (did i mention it is written in Python? not that it should matter).
git seems a lot better but i did not try it extensively.