Switching from SVN to Git

Updated: January 01, 2012

Why?

Belief that we'd have easier branching so we could better do parallel development

Challenges -

Build deploy system depends on SVN

Developer experience with SVN none with Git

To use Github or not?

Process

Chose to use Github - no need to make have internal infrastructure / vpn access + network graph is quite useful. We have chosen to not use forks initially so that all developers have access to main repo. Doing this because it is closer to the way svn works and we don't have anyone who has the time to be the gatekeeper and do the integrations. Used private repositories - moved to the new organization model once that became available

Get our code into git.

  1. used git-svn - loaded the whole repository and all change sets - took a long time give we were at revision 39000 in SVN
  2. attached to github remotes and pushed the code.
  3. Now we had a complete copy of the code history in github
Mapping the development process -