Agile Zone is brought to you in partnership with:

Derik Whittaker is a Software Architect who specializes in all things .Net. Derik has been building enterprise systems on top of the .Net technology stack for over 12 years and along the way has picked up a thing or two about how to create killer systems. During his 12 year career Derik has worked in many different industries ranging from Marking, Healthcare, Retail, Insurance, Automotive and Online Entertainment. Currently Derik is working for a Technology startup (VStrator) in Raleigh North Carolina helping them build out a best of breed technology solution which will enable their users to create world class coaching solutions. Derik believes that the job of a developer is more than just turning syntax into working 1’s and 0’s. Derik is a DZone MVB and is not an employee of DZone and has posted 22 posts at DZone. You can read more from them at their website. View Full User Profile

Moving a TFS Git Repository to Github

04.09.2013
| 2715 views |
  • submit to reddit
We gave using the git support in TFS the old college try but the friction and issues were just too much so we decided to move our repository over to github.  I am not going to go over our issues w/ TFS git here, but I am thinking of creating a separate post for it.

Because we already had our repository w/ change history setup all we really wanted to do was ‘change remote origin’ for our repository and here are the steps WE took to accomplish this.

Our Steps (it is assume you already have a github account setup)

  1. Go to github.com and create your repository.

  2. Create a copy of your existing tfs/git source and move it to a new directly.  I do this simply to ensure I don’t screw anything up and have to do a new pull (i am lazy and xcopy is faster). 
    1. from c:\TFSRepo –> c:\GithubRepo

  3. Open a git command prompt and CD into the destination directory from step 1

  4. From the command prompt run ‘git remote –v’  this command is a sanity check to double check the current origin of your repository

  5. From the command prompt run ‘git remote rm origin’ this command will remove/clear the origin settings for your reporsitory

  6. From the command prompt run ‘git remote add origin http://github.com/[accountusername]/[reponame].git' this command will set the origin information to your new repository path in github.  Pay attention to the url’s casing as github is case sensitive and you may experience issues if the casing is off.  PS. You can get the url above from the github repository page

  7. From the command prompt run ‘git push origin master’ this command will push your current files up to github and publish them.  Please note that this will ONLY push the master branch.  If you want to push other branches you will need to do a ‘git push origin [branchnamehere]’ for each branch.

  8. Refresh the github.com project page and rejoice in the fact that you are out of TFS and your pain should be greatly reduced :)

These are the steps that worked for us, of course they may be different or better ways, but again these worked for us.

Till next time,

Published at DZone with permission of Derik Whittaker, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)