Rod*_*ers 12 tfs tfsbuild minimatch tfs-2015
我在本地设置了TFS 2015,我在上一个构建步骤Publish Build Artifacts上遇到了问题.出于某种原因,构建代理似乎正在存档旧的二进制文件,我留下了一个巨大的文件路径:
E:\TFSBuildAgent\_work\1a4e9e55\workspace\application\Development\project\WCF\WCF\obj\Debug\Package\Archive\Content\E_C\TFSBuildAgent\_work\1a4e9e55\workspace\application\Development\project\WCF\WCF\obj\Debug\Package\PackageTmp\bin
Run Code Online (Sandbox Code Playgroud)
我正在使用示例minimatch模式复制文件以开始:
**\bin
Run Code Online (Sandbox Code Playgroud)
我现在只是测试,所以这不是一个永久的解决方案,但我如何复制bin文件夹中的所有二进制文件,而不是obj的后代?
从研究我认为这应该工作,但它没有(它不匹配任何东西):
**!(obj)**\bin
Run Code Online (Sandbox Code Playgroud)
我正在使用www.globtester.com进行测试.有什么建议?
另外,我将在稍后讨论归档问题,但如果有人对此有任何指示,请随时发表评论.谢谢
jes*_*ing 13
在VSTS中,内置于SDK的URL有两种模式匹配.现在大多数任务都使用Matt的答案中描述的Minimatch模式.但是,有些人使用1.x Agent的Powershell SDK使用的模式.顺便提一下,2.x Agent的Powershell SDK中仍然可以使用该格式.
这意味着有4种任务:
find-filesfind-match粗体的不是Minimatch,而是VSTS-Task-SDK find-files方法中记录的格式.
原始问题发布于2015年,此时2.x代理尚未出现.在这种情况下,模式很可能是:
**\bin\$(BuildConfiguration)\**\*;-:**\obj\**
Run Code Online (Sandbox Code Playgroud)
在-:不包括在它前面的那些项目.