Succed in a migrating from svn to git in a production environment
Today, I will present my retrospective on the migration from SVN to Git. This type of migration is very important, especially if you have a lot of history that you want to keep. In my case, I have more than ten years of history that we want to preserve.
I divided this migration into three steps:
Preparation of the migration:
Of course, you will say that preparation is an important step. You need to warn every SVN user about the migration and explain why you need to do it because many developers do not want to change their habits. In my case, we changed because of the group policy to have more security and also because we needed to change our old server that ran SVN. Once you have explained, you need to train people on Git so that they do not lose productivity when Git is up and running. Then, technically ensure that the SVN repository is clean. In my case, many branches were not used, so we deleted them, and some repositories did not respect SVN rules (had a trunk branch and tag repository).
The Migration:
If everything is correctly done on the SVN side, there should be no problem for the migration with the tool svn to git. But pay attention to the SVN repository tags and branches that need to be in the correct repository with no space in their name.
After the Migration:
Take time with users and follow them in the early phase of using Git. It’s a bit challenging but good with training and some review to improve things. After the migration, all is alright.
In conclusion
Following these three steps will help ensure a smooth transition from SVN to Git. However, like all changes, there will always be some challenges to overcome. Some people will require more attention and training, while others may express that the previous system was better. Stay resilient during this phase, keep communication open, and take time for feedback to ensure everything is fine.