Chris Blyth - aka BlythMeister

Migrating Folder To New GIT Repository With History

 07 April 2021 |  Edit Post |  git, GitHub, History, Migration, Move Folder
 

Background

Having spent a lot of time working out how to migrate multiple folders (see previous post), the time taken on large repositories made this counter productive.

Not only did the process require a human to watch it to run the next command, some of the commands took hours (or even DAYS) to run.

So I needed to find a more effective way to move a folder from 1 GIT repository to another complete with history.

For the purpose of this, I worked on only moving a single folder. The reason for this is that if i needed to move more than 1 folder, I could run the process twice.

Automation

In order to automate the process so that it can be set off and left, I created a C# script which could I ran in LinqPad.

The script would essentially call the git exe on my machine to perform the operations that a human would type.

I would end up with 2 feature branches one in each repo. 1 to remove the migrated folder & another to merge the history into the destination branch.

Outcome

My script can be found in a GitHub Gist