Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

If I am sole developer (I do not work in a team) working from my laptop (Windows OS and Linux VM) and backing up data to the cloud (Dropbox etc), then is git still better than svn for my version control needs?

I was thinking not since I wont need any of git's distributed features. But is git such a better approach to version control that I should consider moving anyway?

With so many articles saying how people are moving from svn to git? I was wondering, if they are talking about large or open projects with teams of developers vs the sole developer.

What do you think?

share|improve this question

closed as not constructive by Walter, Robert Harvey, maple_shaft Oct 9 '12 at 1:26

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

    
If you are working alone, and you know none of them: the only way you can know what's better is trying both. I tried Git and SVN and prefer the former, but again: it's a matter of preference. –  dysoco Oct 8 '12 at 22:24
    
If you are used to svn, especially TortoiseSVN then you may find hg and TortoiseHg a better fit than git. Long term though, you should probably learn both. –  Mark Booth Oct 9 '12 at 13:04
1  
I am really bummed that my question was not considered constructive. I am sure the issue is both valid and relevant. It must be how I asked it. –  nattyP Oct 10 '12 at 4:29
    
@nattyP Yeah! It seems like half the interesting questions I click on have been closed, like this one. –  Joe Ballard Mar 21 '13 at 0:31
add comment

1 Answer

In short: SVN is one repo and lots of clients, while GIT is a repo with lots of client repos, each with a user. Git is a decentralized to a point where people can track their own edits locally without having to push things to an external server.

SVN is designed to be more central where GIT is based on each user having their own GIT repo and those repos push changes back up into a central one. For that reason, GIT gives individuals better local version control.

GIT is really great on OS systems like Unix, BSD, Linux, Solaris and their derivatives. There is a little GUI that ships with GIT that works under a POSIX layer, but it's hardly as intuitive or powerful as TortoiseSVN. Thus, Git has very powerful command line that you would need to get used too.

In addition, Git is simply more versatile and allows offline development in a way subversion never really could. Its available on almost every platform imaginable and has more features than you'll probably ever use.

If you're looking on getting out of SVN, you might want to evaluate Bazaar for a bit. It's one of the next generation of version control systems that have this distributed element. It isn't POSIX dependant like git so there are native Windows builds and it has some powerful open source brands backing it.

But you might not even need these sorts of features yet. Have a look at the features, advantages and disadvantages of the distributed VCSes. If you need more than SVN offers then consider one. If you don't, you might want to stick with SVN's (currently) superior desktop integration.

share|improve this answer
3  
TortoiseSVN has a very user-friendly equivalent for Git, TortoiseGit. –  Amy B Oct 8 '12 at 22:49
    
You are right, i have mentioned that in my post as well. GUI section. –  Yusubov Oct 8 '12 at 22:52
1  
You didn't mention one of the joys of subversion, tree conflicts. The day I never see one again will be a happy day indeed. –  David Hammen Oct 9 '12 at 0:03
    
I have decided to stick with SVN, but I need to come up with a workflow that combines release branching and feature branching. –  nattyP Oct 10 '12 at 4:31
    
Cool, this sounds to me as a different question. Please, read this - meta.stackexchange.com/q/5234/187724 , and post your new question. –  Yusubov Oct 10 '12 at 10:58
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.