I need to implement version control, even for just the developing I do at home. I have read about how great Subversion is for the past couple years and was about to dedicat
I've used RCS, CVS, SCCS, SourceSafe, Vault, perforce, subversion, and git.
I've evaluated BitKeeper, Dimensions, arch, bazaar, svk, ClearCase, PVCS, and Synergy.
If I had to start a new repository today, I'd choose git. Hands down.
It's free, fast, and under active development.
And you can use it as a client of any subversion repository using git-svn.
It rocks.
@superjoe30 Yes, absoluteley. Once you start using version control you never go back. I use it for everything, even my "home" folder.
@Orion Edwards Subversion does not require a server. You can access a local repository directly (via a client, of course), and there is no server process involved.
From my own experience with it, I wouldn't recommend git as an introduction to version control. I've been using it for a couple of months now, and my impression is that it's very powerful and - now that I've partially got my head around it - reasonably intuitive. However, the learning curve is very steep, even though I've been using version control for years. It also suffers from being too expressive - it supports many different workflows and development models, but the only guidance on "the best" way to use it is a few pages deep in a Google search, which also makes it tricky for a newcomer to pick up.
That said, it's possible that starting from a blank slate with git might actually be easier - my VCS experience is all with centralised version control (CVS, SVN, Perforce...) and part of my (ongoing!) difficulty with git has been understanding the implications of the distributed model. I did glance briefly at other DVCSes like Bazaar and Mercurial and they seemed to be somewhat more newbie-friendly.
Anyway, as others have said, Subversion is probably the easiest way to get used to the version control mindset and get practical experience of the benefits of VCS (rollback, branches, collaborative development, easier code review, etc).
Oh, and don't start with CVS. It's still in practical use, and has advantages, but IMHO it has too many historical quirks and implementation problems (non-atomic commits!) to be a good way to learn.
Go for SVN. If you have never used source control before, it won't matter to you one way or the other.
Also, there is not a large amount of learning involved in using a Source Control system. If you learn one, you can easily switch over to another at a later date.
SVN is a great tool, and it should take care of most of your needs. And since it's been around, it has a fair sharer of GUI tools (TortoiseSVN, for example).
Go for SVN.
SubVersion is the best Choice for you , As Karl Seguin pointed out Moving to Another Versioning System would not be a problem. also SVN has very goof Easy to use GUIs in the Client Side (TortoiseSVN).
http://www.snee.com/bobdc.blog/2007/08/getting_started_with_subversio.html http://dojo.jot.com/WikiHome/Getting%20Started%20With%20Subversion
If you choose to go with subversion and you want to host your own svn server, then there is a very nice and easy windows based server called VisualSVN server. It hides the complexity of setting up an apache server, you basically just go next next next. User configuration is handled with a webUI, instead of a config
http://www.visualsvn.com/server/
using a public serve rlike beanstalk is probably easier, but some people like to have their own repositories, either for speed or security