Hacker News new | ask | show | jobs
by columbo 5110 days ago
My opinion in the svn vs git debate:

Unless you are working across multiple groups with developers in different time zones and a choppy set of releases you'll see almost no benefit from git.

However, if you are in that situation the benefits are large and immediate.

4 comments

Well, if you enjoy 'log' pulling info over the network (slowly), .svn in every single folder, barely useable branching, no reabase, no stach, no… well maybe you have the point. Otherwise not even comparable. When I first saw Linus' talk on git where he was very harsh toward SVN uers I thought "WTF". Then I tried git and had to admit that the man was right.
Since Subversion 1.7 (2nd half of 2011) it keeps only one .svn folder in the root folder.
Even when working on my own, I get a massive benefit from git. I think people end up being very polarised here.

The biggest benefit I get is that I can work on a set of changes as a set rather than a linear sequence that only ever goes forwards in time. I use microcommits. As I make progress on a feature, I discover necessary refactoring that I would ideally have been done before I started to add the feature. Interactive rebase allows me to make this so, and the result is that when I am done I can review my own work and check it for correctness with much more confidence than otherwise.

When working in open source, you're expected to provide a patch series for easy review. Git lets me produce such a thing with the same workflow.

Developers who don't wish to work this way, or are unaware of the benefits that this can bring, use git linearly and will see no benefit over Subversion.

I love git even for personal single-developer projects.
I do too. I'm just saying the smaller the project the more the benefits tend to lean towards personal preference over empirical evidence.
I think eliminating the need to set up a SVN repository for very small projects is a major boon.
Local commits and huge speed increases are some of the immediately available, tangible benefits of git over SVN.

Plus, you don't have to migrate your codebase to another SCM tool if the project unexpectedly grows into a larger one.