VSTS 中复制文件与发布工件任务有什么区别?
What is the difference between Copy Files vs Publish Artifact task in VSTS?
在我的 Copy Files
任务中,我将所需的文件复制到我将从中执行部署的文件共享位置。发布神器步骤有什么用?或者在我的情况下它已经过时了。我对应该在框中放入什么值感到困惑。
- 如果您需要将files/artifacts复制到 VSTS 服务器,发布工件任务是唯一的选择(通过为工件类型选项选择服务器)。
- 如果您需要将files/artifacts复制到共享路径,发布工件任务和复制文件任务都可以。复制文件任务比发布工件任务更灵活,因为您可以在 Contents 选项中指定要复制哪些文件以共享路径。
根据您的情况,您可以使用任何任务(发布工件任务和复制文件任务)。由于只需要将$(build.artifactstagingdirectory)
下的内容复制到共享路径\my\share$(Build.DefinitionName)$(Build.BuildNumber)
,两个任务也可以实现。
如果您使用发布工件任务,您在图片中指定的设置就可以了。它将$(build.artifactstagingdirectory)
下的内容复制到\my\share$(Build.DefinitionName)$(Build.BuildNumber)\drop
.
如果使用复制文件任务,设置如下。它也将得到与发布工件任务相同的结果。
我发现了另一个区别,即清理构建时(手动删除或保留规则删除它们时)。
使用以共享文件夹作为目标的发布工件任务时,已完成放置文件夹的清理。
使用“复制文件”任务时,未完成放置文件夹的清理。
如果共享文件夹的清理对您来说是个问题,那么切换到使用 Publish Artifacts 任务似乎是个好主意。
希望对您有所帮助。
在我的 Copy Files
任务中,我将所需的文件复制到我将从中执行部署的文件共享位置。发布神器步骤有什么用?或者在我的情况下它已经过时了。我对应该在框中放入什么值感到困惑。
- 如果您需要将files/artifacts复制到 VSTS 服务器,发布工件任务是唯一的选择(通过为工件类型选项选择服务器)。
- 如果您需要将files/artifacts复制到共享路径,发布工件任务和复制文件任务都可以。复制文件任务比发布工件任务更灵活,因为您可以在 Contents 选项中指定要复制哪些文件以共享路径。
根据您的情况,您可以使用任何任务(发布工件任务和复制文件任务)。由于只需要将$(build.artifactstagingdirectory)
下的内容复制到共享路径\my\share$(Build.DefinitionName)$(Build.BuildNumber)
,两个任务也可以实现。
如果您使用发布工件任务,您在图片中指定的设置就可以了。它将
$(build.artifactstagingdirectory)
下的内容复制到\my\share$(Build.DefinitionName)$(Build.BuildNumber)\drop
.如果使用复制文件任务,设置如下。它也将得到与发布工件任务相同的结果。
我发现了另一个区别,即清理构建时(手动删除或保留规则删除它们时)。
使用以共享文件夹作为目标的发布工件任务时,已完成放置文件夹的清理。 使用“复制文件”任务时,未完成放置文件夹的清理。
如果共享文件夹的清理对您来说是个问题,那么切换到使用 Publish Artifacts 任务似乎是个好主意。
希望对您有所帮助。