Now I love GitHub, the whole idea of social coding is awesome, but within an enterprise/business I still feel that Subversion has its place namely because a lot of large organisations at this current time won’t want to invest money into changing the Source Control Management system from something that the management see as working. (Yes they are free, but you have training, server install, support costs to consider)
Now I’ve played with GIT and MERCURIAL and really do like them, I prefer Mercurial over Git and that could be to do with the fact it has some resemblance to Subversion and also that Joel Spolsky’s Fog Creek’s Kiln looks and is awesome. I get the whole idea of Distributed revision control so don’t get me wrong I’m saying there is no place for it in the Enterprise, but for me right now I don’t think businesses will see the benefit of the switch over night, if they have subversion working for them correctly, and most people will find the jump give them more productivity if their current subversion usage isn’t optimised. 
In my current position we have around 14 ColdFusion developers, and we’re using agile techniques to build our internal software. So with this comes Unit Testing, Database Testing, IDE, One Click Deployments and so forth, and there is plenty to learn here already and in my humble opinion these techniques have a far greater importance to learn then a new Source Control Management system. The first stumbling block I’ll see if people will commit and then not push, and so although it’s on the local machine it will be very easy (at the start of the implementation, to forget to push)
In addition all our ANT Scripts have been set up with SVNANT and I guess there are other ways to do the same in ANT for GIT and MERCURIAL; so for the foreseeable future we’ll be sticking with Subversion.
I’m not going to say I’ve got my Subversion usage right instantly no matter where I have worked, every position I’ve had I’ve learnt new ways of dealing with things in Subversion and now I feel I have mastered the beast enough. 
I’m going to start a few blogs about how we now use Subversion in the team I work in and I hope some people find it useful and also will change their thoughts on Subversion usage in the future.
Also with the release of Subversion 1.7 it has a lot of improvements with speed, but at the moment we’re stuck with using 1.6 due to our need for SVNANT and this hasn’t been upgraded to use 1.7 yet as there are a lot of API changes.


2 Responses to Subversion is still a Valid SCM in the enterprise.

  1. Kurt Wiersma says:

    I couldn’t agree with you more on pretty much every point. I have found that many people claiming git is better then svn for the enterprise didn’t realize all the nice features svn has added for merging and weren’t using them causing them to believe svn’s merging is horrible. We have had great success merging using the svn merge tracking features. Granted I will admit our branching is pretty simple.

    We also had been using svnant for deployment. I haven’t been able to figure if they are even working on a version that will work with svn 1.7. I know svnkit got updated so that part is good. I ented up re-writing our build script to just use the exec task and call the svn commandline tool with the xml option. That seems to work just as well for what we are doing and will allow us to update to 1.7 in the next month or so.

  2. Ernest leitch says:

    My work is just starting the switch to git from perforce and its a little painful because you have a lot of training and learning how to set up your repo. I like git and have switched from svn because branching is much nicer.

Leave a Reply

Your email address will not be published. Required fields are marked *