Migrate Git to TFS with all history

20.3k views Asked by At

Is there any way to migrate a git repository to TFS with all it's history like versions, branches and push messages? Now the source is on Github and I want to migrate that to my local TFS repository.

2

There are 2 answers

1
jessehouwing On

The Branches in TFS are mapped to folders, which doesn't easily convert from the way branches work in Git. Grabbing one branch and pushing that, with history to TFS should be possible though. You'll have to use Git tf checkin --deep

See:

If you want to migrate to TFS the easiest migration path is to TFS 2013 or Visual Studio Online, which has native Git support.

0
mzagozda On

Install git-tf from Codeplex source, MS Downloads, or better yet:

Then run the following commands:

  1. First you need to configure your GIT repository

    git tf configure http://yourserver.com:8080/tfs/DefaultCollection $/RepositoryName
    
  2. Check in the files, optionally persisting author/USERMAP:

    git tf checkin --deep --autosquash --keep-author
    

This process is very slow, but it works, so ensure you have plenty of time to spend migrating. The only downside is that commit time will be the current checkin time, not the original changeset time.