I got a question in the comments of my previous post re this, so I’m going to weigh in real quick:
I’ve used CVS, Subversion (SVN) and Git and dabbled with a few commercial products.
Use “git”. Here’s why:
- If it’s not already the most popular, it will be soon.
- It is used for the Linux Kernel and was designed by Linus Torvalds, creator of Linux. If it can handle Linux’s source and a distributed team that size, your project will do just fine.
- It’s incredibly fast, which is important if you have lots of source and larger files.
- It’s very robust. This was one of the original design considerations.
- It’s designed to work well with a distributed team.
- It’s extremely well supported and many complementary open source and proprietary products are available for git. Check out GitHub for example.
- It specifically fixes flaws in previous revision control systems like CVS so there are many learnings built in that make it better than older systems.
- If you plan to collaborate on an open source project, you’re probably going to be using Git anyway.
I still have some of my legacy projects on Subversion purely because my deployment system is built on subversion. But everything new I do is on Git, both open and closed source.