Git-TF is a set of cross-platform, command line tools that facilitate sharing of changes between Microsoft Team Foundation Server, Visual Studio Online and Git.

These tools make it easy to clone sources from TFS, fetch updates from TFS, and update TFS with changes committed locally in Git.

Getting started

Latest release: Git-TF 2.0.3.1

Get the latest binary release from the Microsoft download page.  If you want the very latest bits then you could also build from the source.

Installing

The easiest way if you are a user of Chocolatey is to type “cinst Git-TF” at a command prompt on a machine where Chocolatey is installed.  But to set up Git-TF manually then do the following steps once you have installed Java:

  1. Extract the contents of git-tf-2.0.3.20131219.zip to a folder on your local machine, i.e. C:\git-tf on Windows, or /user/git-tf on Mac/Linux.
  2. Add the path where you extracted Git-TF (i.e. C:\git-tf) to your PATH environment variable.
  3. Add the path where java.exe is installed (i.e. C:\Program Files (x86)\Java\jre7\bin) to your PATH environment variable.

Usage

Individual developer with a new repository

A typical workflow for an individual developer using the Git-TF tools are as follows.

  1. git tf clone http://myserver:8080/tfs/mycollection $/TeamProjectA/Main
  2. Make changes to the file in the Git repo
  3. git commit -a -m "commit one" (commit changes locally)
  4. Make more changes
  5. git commit -a -m "commit two"
  6. git tf pull --rebase
  7. git tf checkin

Development team with an existing repository

For a team working with an existing Git repo, a developer sharing changes to TFS using Git-TF would use the following workflow. For details, see Working with Teams.

  1. git tf configure http://myserver:8080/tfs/mycollection $/TeamProjectA/Main
  2. git tf pull
  3. git commit -a -m "merge commit"
  4. git tf checkin
  5. git push

Commands

Contributing

Interested in contributing? Learn about how you can contribute.

Additional resources

Articles

Last edited Dec 20, 2013 at 5:18 PM by willsmythe, version 27