11 July 2013
The first step towards migrating to GitSubversion to Git since Git is much more in line with our philosophy being peer-to-peer instead of centralised. A full migration is a big process though - the Wikimedia foundation took well over a year of discussions and testing to achieve this migration.
But after the recent migration we made on our web-server from Apache to Nginx, we were left with the problem of anonymous users no longer being able to checkout local read-only copies of our code over HTTP since it relies on a module which isn't available for Nginx. We set up a Guest RSA key so that users could still do this over SSH, but this is a very complicated process for the average user and is a complete nightmare for Windows users.
So we took this problem as an opportunity to take the first step on the Git-migration journey! I found a very useful script by Daniel Pocock here which allows a read-only Git mirror to be maintained automatically from your Subversion repositories. This means anonymous users can easily access and use our public code while we still continue working with our local Subversion repositories without requiring any changes to our procedures :-)