Getting History from TFS

I recently needed to get a list of all changes to a project checked in to Team Foundation Server’s source repository between two dates.  By opening the TFS Source Control Explorer, right-clicking on the desired project name, and selecting View History, I was able to get a list of every changeset for that project.  Double-clicking on a changeset produced a dialog that showed each file that is part of the changeset.

This is useful, but only allows viewing of one changeset at a time, and I needed a way to view all of the changesets and files at one time.

I found a post on Stack Overflow (, which proved to be exactly what I needed.

It shows how to use the TF.EXE utility to produce a report on changesets between two dates.  On my computer, TF.EXE was not in the path, so I first had to navigate to C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE>

From there, I ran the following command (all on one line):

tf history -noprompt -server:http://SERVER:8080 $/PROJECTNAME -version:D2009-10-23T01:01:01Z~D2010-11-30T01:01:01Z -recursive -format:detailed -login:DOMAIN\USERNAME,PASSWORD

The output looked something like this (repeated for each changeset):

Changeset: 6489
User: mlichtenberg
Date: Thursday, October 28, 2010 2:20:47 PM

  Added "GetUnpublished" methods to the API.

  edit $/BHL/BHLApi/Api2.cs
  edit $/BHL/BHLApiDataObjects2/Item.cs
  edit $/BHL/BHLPrototype/api2/docs/docs.html
  edit $/BHL/BHLPrototype/api2/docs/docs.txt
  add  $/BHL/BHLPrototype/api2/docs/GetUnpublishedItems.xml
  add  $/BHL/BHLPrototype/api2/docs/GetUnpublishedTitles.xml
  edit $/BHL/BHLPrototype/api2/httpQuery.ashx.cs
  edit $/BHL/BHLPrototype/api2/soap.asmx.cs
  edit $/BHL/NameServiceDAL/Api2DAL.cs

Check-in Notes:
  Code Reviewer:
  Performance Reviewer:
  Security Reviewer:


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: