In TFS 2008, TfsBuild.proj files can be located anywhere in source control, not just in $/TeamProject/TeamBuildTypes, as was required in TFS 2005. As a result, we changed the default recursion type used to download files from the configuration folder path (the location of TfsBuild.proj) to RecursionType.OneLevel, meaning that only the contents of the exact directory of TfsBuild.proj are downloaded. The rationale here is that if you for some reason decided to put your TfsBuild.proj file at $/TeamProject, a fully recursive download would get the entire contents of the repository for that team project, which is probably not what you would want! In some cases, however, you may wish to do a fully recursive download (if you store custom task assemblies in a subdirectory under your configuration folder path, for example), so we did provide a backdoor for changing this behavior. In particular, you can set the ConfigurationFolderRecursionType key in TfsBuildService.exe.config on your build machine to “Full” to get full recursion. Something like:
<add key=”ConfigurationFolderRecursionType” value=”Full” />
…in the appSettings portion of the config file should do the trick. Make sure to restart the service after making the change, and the next build should do a fully recursive download.