stiefels.net Just another WordPress weblog

27May/082

Moving from Subversion to Git

I started using version control management systems with [CVS](http://ximbiot.com/cvs/cvshome/dev/) several years ago.
But soon it was clear that using Subversion instead of CVS would make version control a lot less cumbersome and error prone process. And for the last years Subversion was the system of my choice.

But then I saw [Linus Torvalds' Tech Talk speak at Google](http://www.youtube.com/watch?v=4XpnKHJAok8) about his new version control system called [Git](http://www.git-scm.com).
Although Linus' talk was a little bit offensive on other version control systems I liked the idea of Git being a distributed system. Other features like the true ease of branching/merging or its speed made it even more attractive.
So I played around with it for a while and I started to like it. This weekend I decided to switch all my Subversion managed projects to Git.
There are some good tools that come with Git which make this process very easy. I don't want to give another tutorial how to move your Subversion to Git. There are a lot of websites that do that.
But here are some links which helped me doing the transition:

* [Git for SVN Users](http://git.or.cz/course/svn.html)
* [Git User's Manual](http://www.kernel.org/pub/software/scm/git/docs/user-manual.html)
* [Git Internals](http://peepcode.com/products/git-internals-pdf) (Recommended!)
* [Git Screencast](http://peepcode.com/products/git)
* [Git SVN Workflow](http://andy.delcambre.com/2008/3/4/git-svn-workflow)
* [Git Installer for Mac OS X Leopard](http://code.google.com/p/git-osx-installer/)
* [Installing Git on Mac OS X Leopard](http://dysinger.net/2007/12/30/installing-git-on-mac-os-x-105-leopard/)

Tagged as: , 2 Comments
2Jun/070

Merge Tracking in Subversion 1.5

Everyone who is working with [Subversion](http://subversion.tigris.org) using multiple branches knows this problem: Merging changes from branch A to branch B needs to be documented (in most cases in the log).
This can be risky as if one developer forgets to put that important information in the log, no one will ever see which change sets are now merged in branch B and following merges can cause lots of conflicts or loss of changes.
There is no automatic book keeping in Subversion - yet. In the upcoming release, Subversion 1.5 will provide [merge tracking support](http://subversion.tigris.org/merge-tracking/).

I am really happy to see that great software gets even better!