How to create shadow folders in TFS

One of the features from VSS that TFS does not support “out of the box” is shadow folders.  Last year, one of our interns, Philip, wrote short guide to setting up shadow folder for TFS by using Scheduled Tasks in Windows (he also wrote tfpt.exe).

I’ve attached the MS Word document to this post.  You can read the introduction below.  Another use for this is to prime the version control caching proxy at a remote location to minimize the amount of time users have to wait to get files from the version control repository.

Shadow Folders with Team Foundation Version Control

Microsoft Team Foundation Version Control does not support the concept of shadow folders. In Visual SourceSafe 6.0, shadow folders are a copy of the repository, constantly updated with the latest version of each checked-in item.

Shadow folders are useful for several situations, including:

  • Source code index servers

  • Centralized build servers

Shadow folders can be emulated with Team Foundation Version Control by using the Scheduled Tasks service on Windows Server 2003 or later.

Shadow Folders.doc

Comments (10)

  1. Manish Agarwal blogs on overriding precedence for properties in MSBuild.

    Josh Ledgard tells us that…

  2. Rob Caron says:

    Buck Hodges has posted a short doc by a former intern on how to replicate the shadow folder feature…

  3. Buck Hodges says:

    Brian Harry announced the latest release of the Team Foundation Power Toys in the post, New TFS Power…

  4. Buck Hodges says:

    Brian Keller has put up a video on Channel 9 that has Erin Geaney, a developer on the TFS MS Office integration

  5. After I’ve told everyone that it can’t be done in Team System, Buck Hodges posts how to emulate that

  6. We have often been asked whether TFS supports shadow folders as does Visual Source Safe and the answer

  7. Paul Noeldner says:

    This problem exists because MS failed to follow a central principle of good design – always enable multiple ways to access information, including UNANTICIPATED NEEDS,  using generic tools as well as app-specific tools. This is what open and reusable means.  This means avoid tool-specific repositories if possible (use generic file systems or databases), and if that’s not possible, provide a means to create copies or emulate that access.

  8. buckh says:

    Paul, we have a command line and an object model that provides access to the server so that you can build whatever tools you need to fill gaps.  This shadow folder solution uses the command line with the Windows task scheduler to fill this gap for folks that need it.

    Also, the October TFS Power Tools for TFS 2008 release includes PowerShell scripts for TFS, further opening up possibilities to extend and adapt the system in new ways.


  9. Alex S says:

    Thank you. will try .