I have been on TFS since 2005 Beta 2, installed it, admined it, and used it on a daily basis at work. I would like a source control solution for my home projects, written with Visual Studio 2008 Professional, and I cannot afford TFS.
After merging, the big thing for me is the integration into Visual Studio, I have just become too accustomed to running source control from inside an IDE to change right now.
I have done some homework and it has come down to Git and Subversion.
Git
Subversion
At some point I will probably try both just to expand my knowledge on the subject, but until then I am looking for something that just works.
AnhkSVN got off to a rough start, but now it's a pretty nice and stable tool. So I don't think you have too many issues there.
If you're just developing by yourself, go with SVN, since the toolset is a bit better and more mature (at least the last time I checked), and DVCS is probably overkill for a single user :).
Both systems are in active development, and both have active communities that love and support each.
Gotchas? Yeah, the check-out model is gone with both. TFS is optimized for an always-on, check in/check out model, even though checkouts aren't necessarily blocking like they are in VSS. I personally think that once you get used to it, you'll prefer SVN over TFS's source code control. Especially in mobile scenarios where you might not be connected to your home source code control server.
I'm a bit biased because I'm an admitted SVN fanboy, but I would go with SVN for your needs. Something like Git is more appropriate for times when you want to start a project where you want to have contributors merge changes into your stuff in a distributed and disconnected fashion. If you don't need that, SVN is the place for you.
I can speak only to gotchas. While I'm pretty happy with git, I do confess that there can be a lot of unpleasant surprises, like trying to push to a repo with a checked-out working directory, or the fact that when you clone a repo you don't always get all the branches. Subversion is a more mature, organic, unitary design. I personally can't live without the distributed features that git provides, but there are definitely fewer gotchas with svn.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With