Getting into Git

With the pending move to the US, I need someway to work detached from the main NZ network. So I was keen to try-out Mercurial or Git. I had heard more positive Mercurial stories, verse the real men use Git type stories. So had intended to go with Mercurial.

But our local linux/git hacker was appalled and spent some time showing me how well git and svn can co-exist.

So I started playing with Git, trying to clone my subversion repository, but was not having the best of luck, due to how the repository was formed when I moved and merged two VSS repositories.

Anyway showing James (yes he has a name) my odd clone behaviours, got him intrigued. Half an hour later he was back, telling me all about how the SVN repository history was all messed-up (aka Trunk was not always there, etc). Then offered to work some Git vodoo and fix it all for me.

A day later, he excitedly told me how he manually extracted the blocks of history, and using Git filters, that allow per entry rewrites (or paths) was rebuilding my Trunk and Branches into git, so they looked like they were always located like how the SVN tree currently is.

So it sounds like Git is quite powerful. Sounds like the type of stuff that would make great blog fodder. But I’ve not done any of it myself, so I can’t tell you how todo it, other than it can be done. The tools seem to have lots of flexibility, and when things go wrong, James will have to drop everything and fix it.

See I am becoming more manager like as the days roll by…

Also to make-up for steeling my blog post, he invited me to Google Wave.