I know that this question has been asked many times before in different guises and that I’m an ignorant n00b for thinking that I could add anything to the discussion. However, I’m interested not only in the version control system but also in its hosting options, compatible applications, and Windows compatibility.
If you don’t have experience with more than one system, tell me what you use: version control system, code hosting, implementation (vc program), and OS.
I only have a few constraints:
- I’d like to use a program that works well in both Linux and Windows. That means at least an equivalent command-line interface.
- The implementations must be stable enough that I don’t have to constantly re-compile on Linux and I never have to compile on Windows.
- The version control must have at least one compatible free code hosting site (for open-source projects). If the hosting site itself is open-source, that would be ideal.
- The version control standard must be open-source.
Sorry if I sound like a demanding brat asking for other people to make his decisions. I just want to learn from your experience so that I don’t have to switch version-control systems repeatedly.
First off, you might benefit from this recently published paper in the ACM Queue:
Making Sense of Revision-control Systems
I’ll outline the two which I know the most about, others can tell you about the rest.
SVN:
GIT:
It sounds like you might just want to go with svn.
It sounds like you just want to have stuff under version control, this way you won’t have to worry about the learning curve associated with GIT.
Others to look at, but I didn’t detail because of general lack of windows tools: Mercurial, Darcs, Bazaar.
If you do check out mercurial you can use bitbucket and google code as a host.