创建构建定义时,我已经设置了一些源设置,例如以下示例:
问题是当有人签入Builds或Install文件夹时,我希望它触发一个构建,但是Includes文件夹只是它需要的一些库和其他项目。这些库更改后,我不希望它重新运行。但是,我需要在此处进行设置,以确保将它们复制到Build Drop服务器上。有没有办法在有人签入此Includes文件夹时复制该文件夹而不会强制生成触发器?
有两种方法可以解决这个问题。
首先,您需要将源文件夹放入以构建为中心的布局,这将有助于消除尽可能多的重叠。
如果您需要一个不触发构建的特定共享文件夹,则不要在源映射中包括它,而应添加脚本以将文件下载到您的工作空间中,作为构建的早期部分。
该示例将需要针对您的Visual Studio版本进行更新,并且您应该将源目录传递给脚本。
REM %1 represents the Sources directory
REM Compute variables
SET TfExe="%ProgramFiles(x86)%\Microsoft Visual Studio 10.0\Common7\IDE\TF.exe"
REM SET TfExe="C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\TF.exe"
Set RefPath="$/TFS BUILDS/Shapes/Main/Includes"
Set localPath="%~1\Includes"
REM set the Drive Letter for this build
Set Localdrive=%localPath:~1,2%
%Localdrive%
cd %1
REM Map the folders
%TfExe% workfold /map %RefPath% %localPath%
REM Get the required content
%TfExe% get %RefPath%
REM Unmap the folders
%TfExe% workfold /unmap %RefPath%
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句