我将VSTS用作构建服务器,并且在构建时我想将bin文件夹内容复制到目标的根目录,还将自定义文件从另一个文件夹复制到该目标。 MSDN建议我使用minimatch模式,但它使用子目录结构复制文件。我对恢复结构不感兴趣。
例如,我得到以下文件夹结构:
Project
MyProjectFiles
bin
x86 (it's build configuration)
Project.exe
Other project files
Project.sln
SomeScrips
script1.ps1
但是我想收到以下文件夹结构:
Project.exe
SomeScripts
script.ps1
我可以使用哪种最小匹配模式?
最佳答案
使用基于Web的新构建系统,您可以在一个步骤中使用多个模式。因此,您可以针对自己的情况执行以下操作:
Project\bin\x86\Release\project.exe
SomeScripts\**\*
或者,如果您在构建步骤中也使用了变量(例如
BuildPlatform
/ BuildConfiguration
)中的构建平台和配置,则可以在模式中使用它们:Project\bin\$(BuildPlatform)\$(BuildConfiguration)\project.exe
SomeScripts\**\*
如果希望
project.exe
位于根目录而不是结构中,则需要先使用Copy Task
将文件暂存于所需结构中。您可以使用$(Build.StagingDirectory)
作为目标。然后,使用$(Build.StagingDirectory)
作为副本根目录使用“发布”任务,并将所有内容从该根目录发布到下拉列表。
关于azure-devops - 从Visual Studio Team Services部署时在目标目录中复制一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34587282/