想要将构建输出复制到源代码管理下的另一个目录

时间:2014-04-22 17:19:56

标签: c# dll tfs tfsbuild

我目前正在设置TFS 2013构建服务器。

我有几个不同的应用程序,共享一些共同的代码。当其中一个共享库发生签入时,我希望TFS自动构建,并将其放在源代码管理下的另一个目录中。

构建服务器当前构建了DLL,但我无法将它们移动到源控制文件夹中。

EX:

来源控制

  • Sprint X

      - App 1
      - App 2
      - Common Libraries
            * Utilities
      - DLLs
    

当有人检查Utilities中的更改时,它应该编译DLL并将其移动到“DLLs”。当一个人获得最新信息时,他们就在DLL文件夹中。

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

通常最好在这种情况下使用NuGet。但是,要回答您的问题,您需要执行以下操作

在每个客户端构建的工作空间中添加共享DLL的文件夹路径,并设置要为Continuous Integration触发的客户端构建。这样,当任何人签入共享DLL文件夹中的文件时,将为每个客户端触发构建。

第二个是每次构建DLL时签入shraed DLL文件夹中的更新DLL。您需要修改构建工作流程以便

1)签出DLL文件 2)将DLL从输出路径复制到共享DLL文件夹 3)检查DLL文件

您可以使用TFS Build Extensions(http://tfsbuildextensions.codeplex.com)库来实现上述所有功能。可以使用TFSSource活动执行步骤(1)和(3)步骤(2)可以使用File活动完成。

希望有所帮助