Git, Mercurial and Bazaar are distributed control systems that operate of the idea that you aren't always connected to the Net, and that there need not be one central version of the repository.
If you're doing a lot of detached work, sometimes called "airplane mode", as in you're on an airplane and can't commit, take a look at Bazaar. I've found it easier to acclimate to than Git or Mercurial.
If you're always doing work connected to the Net, and you're the only developer, then you can probably stick with Subversion.
Also, please consider the value of keeping your home directory in Subversion.
Mercurial
I mainly used CVS and SVN, happy and content, then I started researching Distributed Source control as there was lots of fuss made about DSVC. After a using DSVC I noticed a change in my development style, I became more fluid and adaptable. Allowing me to merge back into trunk or experimental branch painlessly.
Git
Git is cool, but you need to constantly maintain your source code depo and repack it. As it consists of many bash scripts it has trouble running on windows. But it is blazingly fast, with many features for you to use. Actually the amount of features can be a disadvantage.
BZR
I havnt looked back since I started with HG
I personally would stay with Subversion. From a professional stand point I have seen a lot more jobs ask for (and know) what Subversion was compared to GIT. Also there are a lot of open source and freeware tools built around Subversion, not to mention Subversion's huge community.
Source control is not always about the latest and greatest, but is more often about what is tried and true.
The best reason to change is necessity. However, it sounds like there is no real need to change. You are an "Army of One" so most of the powerful features do not apply to your situation. Yes, people will argue with me on this, however they will be pushing this feature or that feature which more than likely you really do not need. Timing is everything, if in the future your needs change then change your solution.
There will always be better or different solutions for a problem space, in this case source control, however you should balance personal development, process/practice improvements, and delivering work product. You could learn more about the different solutions/applications for source control to expand your knowledge to recognize when it is time to switch solutions but stick with what works for now.
Here are 3 reasons to switch to git from Subversion (from MarkMcB):
(Read the linked article for full explanations and direct comparisons of how to do the three things in both git and Subversion.)
I also personally would stay with Subversion, Is there anything better?
Subversion is a great version control system, and you're happy with it, so if you are looking further, I can recommend you to get some info about Continuous Integration, there are many tools out there that can help you to make automatic builds, make your builds self-testing, check the integrity of each commit, and much more...
Mercurial is also worth consideration; branching is much friendlier, and it can work without a network connection. I never seriously tried separating work into branches until I moved from SVN to Mercurial.
The one thing I seriously miss is TortoiseSVN; there's a workalike (TortoiseHg) that's pretty good, but it's just not the same..
Anyway, creating a Mercurial repo from an SVN one is trivially easy...give it a try and see whether it suits you or not.
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