TF diff entire set of files at once rather than one at a time

59 views Asked by At

When I run tf diff, either recursively or against a shelveset, it goes through file-by-file and runs tf diff <myItemSpec>. I have my diff config set to compare files using windiff.exe which can handle a list of files, so running a new instance of windiff for every file is really annoying.

I remember being able to run windiff against an entire set of files at once years ago, but when I was working on that project, we were using two different versioning systems (originally our project was in TFS and we transitioned back to a proprietary versioning system, one that I'm certain had this functionality), so maybe TFS never could do this.

tf folderdiff seems like it should be the answer, but it doesn't appear that you can set the program it runs, nor can you specify a shelveset. It just runs some TF GUI which then allows you to run your configured diff program on a single file at a time.

Am I remembering wrong and TF never could do this? Is there there a hack/script that can do what I want it to?

1

There are 1 answers

0
Jeff On

As here, https://stackoverflow.com/a/2166188/616827,

tf diff $/Foo /version:C14317~C14318 /recursive /format:unified > foo.diff

  • $/Foo specifies the entire repo (not one file at a time)
  • /Version to compare one changeset against the previous
  • /format is optional