Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

3. run following in cmd shell to test Chocolatey installation

Code Block
choco


(Please note If you have Git-TFS already installed, you can jump to step 7)

4. run following in cmd shell to install gittfs git-tfs through Chocolatey

Code Block
choco install gittfs


5. Type "Y" when prompt to install any additional toolset.

6. run following in cmd shell to verify git-tfs installation.

Code Block
git tfs help


7. run following command if want to list all TFS branches that could be cloned (Please be careful to use this command as it might take long time.  Also be sure to replace appropriately with your TFS collection information)

Code Block
git tfs list-remote-branches http://tfsprod:8080/tfs/Marine%20Safety/


Tip

If you don't see the branch you want to clone, then it probably hasn't been configured as a branch in TFS.  You can do this through Visual Studio by right-clicking on the "project" in Source Control Explorer and converting it to a branch:

Warning

If your codebase in TFS has sensitive information (eg. passwords), do not include them in your Azure Devops repository.  Remove them from the codebase, check the changed files back into TFS and then be sure to clone the latest only (step #8).  If you clone all history (as in step #9), the passwords will still be available in the repo history.  If you really need to keep the history then you'll have to do something like:  How-to Remove Sensitive Info from a GIT \ Azure DevOps respository.


8.run Run following command to clone only latest code. For example: MPDIS-SDDPM (You might need to set up userName and Email for git before clone: git config – global user.name "YourName" ; git config --global user.email "xx.xx@tc.gc.ca").  Go to the next step if you want to keep the full history!

Code Block
git tfs clone http://tfsprod:8080/tfs/Marine%20Safety/ $/MPDIS-SDDPM_Scrum/DEVELOPMENT/MPDIS-SDDPM c:\tmp\migration\mpdis


9. or Run following command to clone all history from TFS for all branches. For example: MPDIS-SDDPM

Code Block
git tfs clone http://tfsprod:8080/tfs/Marine%20Safety/ $/MPDIS-SDDPM_Scrum/DEVELOPMENT/MPDIS-SDDPM c:\tmp\migration\mpdis --branches=all


Warning

If your codebase in TFS has sensitive information (eg. passwords), do not include them in your Azure Devops repository.  You can do one of two things:

  1. Remove them from the codebase, check the changed files back into TFS and then be sure to clone the latest code only (step #8).  You will lose all history in this case.
  2. If you clone all history (as in step #9), the passwords will still be available in the repo history.  Remove the culprit files from history as follows:
    1. In the cmd shell, navigate to your repo's folder (in the above example it was c:\tmp\migration\mpdis).
    2. (See this page for more detail regarding this step).   Run the following making sure to change the path-to-the-file to the actual path to the file (eg. src/web.config):  git filter-branch --force --index-filter "git rm --cached --ignore-unmatch path-to-the-file" --prune-empty --tag-name-filter cat -- --all
    3. You've now removed the culprit files from history.  You can re-create and add them to the repository later with sensitive information removed if you'd like.

10. Check history:

Code Block
git log

11. check origin:

Code Block
git remote -v

12. If has already attached a remote origin, we need to remove origin:

Code Block
git remote rm origin

13. Add devops origin (replacing below with appropriate repo information):

Code Block
git remote add origin https://tcnarwhals@dev.azure.com/tcnarwhals/MPDIS-SDDPM_Scrum/_git/MPDIS-SDDPM_Scrum


Tip

If the DevOps Master branch has ReadMe.md file created and committed, we need to run the following commands to merge remote and local together.

git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks pull --no-commit origin master --allow-unrelated-histories

git commit -m "Merge branch 'master' of https://dev.azure.com/DSD-Marine/MSS-Portfolio/_git/MPDIS-SDDPM_Scrum"

14.

Code Block
git push -u origin --all

...

info


Filter by label (Content by label)
showLabelsfalse
max5
spacescom.atlassian.confluence.content.render.xhtml.model.resource.identifiers.SpaceResourceIdentifier@1293e
showSpacefalse
sortmodified
reversetrue
typepage
cqllabel in ( "git" , "git-tfs" , "tfs" ) and type = "page" and space = "MAR"
labelsGit TFS Git-Tfs

...