如何在TFS中具有不同的生成和删除目录结构
我有一个TFS构建配置,它构建了一个包含36个项目的解决方案。它们被分类在各种平台中,如“测试”、“WPF”和“WinRT”。我需要使用以下结构配置我的放置位置:如何在TFS中具有不同的生成和删除目录结构,tfs,msbuild,tfsbuild,directory-structure,Tfs,Msbuild,Tfsbuild,Directory Structure,我有一个TFS构建配置,它构建了一个包含36个项目的解决方案。它们被分类在各种平台中,如“测试”、“WPF”和“WinRT”。我需要使用以下结构配置我的放置位置: /Solution /Tests /Project1.dll /Project2.dll /Project3.dll /WPF /Project4.dll /Project5.dll /Project6.exe /W
/Solution
/Tests
/Project1.dll
/Project2.dll
/Project3.dll
/WPF
/Project4.dll
/Project5.dll
/Project6.exe
/WinRT
/Project7.dll
/Project8.dll
/Project9.exe
我尝试为每个项目设置一个自定义输出目录,并为特定平台中的所有项目共享同一目录,但当其中两个项目复制构建目录中的共享依赖项时,这会导致构建失败。由于两个MSBuild实例可以尝试同时复制文件,其中一个实例可能会触发拒绝访问错误,因为另一个实例仍在写入文件
如果我可以有一个不同的构建和删除位置结构,我可以保留构建目录的默认结构,只让删除过程复制最终文件并跳过重复的依赖项。是否有一种方法可以自定义放置位置,使其与构建位置的结构不同?如何实现这样的设置?查看有关自定义输出目录的讨论。HTH查看有关自定义输出目录的讨论。HTH默认的TFS构建将所有输出合并到一个目录中
我通常会编写一个powershell脚本,将一个大目录中的所有文件移动到我想要的文件夹结构中。我将把该脚本签入TFS,并自定义我的TFS构建以在最后一步运行该powershell脚本(就在它从$(SourcesDirectory)\Binares->$(BuildDropDirectory)复制文件夹之前)。默认TFS构建将所有输出合并到一个目录中
我通常会编写一个powershell脚本,将一个大目录中的所有文件移动到我想要的文件夹结构中。我将把该脚本签入TFS,并自定义我的TFS构建,以便在最后一步(就在它从$(SourcesDirectory)\Binares->$(BuildDropDirectory)复制文件夹之前)运行该powershell脚本。我已经在使用自定义输出目录。问题是它们不能正确地实现我想要实现的目标。我希望在构建期间保留默认的输出目录,但我希望我的放置位置具有不同的结构。我想要的是,我的所有项目都建立在自己的目录中,然后将所有输出合并到一起,以创建最终的包。我已经在使用自定义输出目录。问题是它们不能正确地实现我想要实现的目标。我希望在构建期间保留默认的输出目录,但我希望我的放置位置具有不同的结构。我想要的是,我所有的项目都建立在自己的目录中,然后将所有的输出合并到一起,创建最终的包。看来这可能是我想要达到的目标的唯一解决方案。我会研究这个问题。看来这可能是我想要达到的目标的唯一解决办法。