2

我正在使用 VSTS 和构建任务FTP Upload。当文件和文件夹上传到我的 FTP 服务器时,.git文件夹也总是被复制到服务器上。我尝试使用如下文件模式排除.git文件夹:

**
!(**/.git/**)

我不知道为什么它不起作用,但有没有办法用 minimatch 模式告诉任务明确排除文件夹?

4

1 回答 1

16

FTP 上传任务中文件模式选项的最小匹配模式只能排除文件夹。比如如果你使用!**\.git\**as File 模式,它只会删除.git文件夹和其中的子文件夹,但这些文件夹中的文件仍然会上传到 FTP 服务器。

如果您不希望.git文件夹(包括其中的文件)上传到 FTP,您可以在 FTP 上传任务之前添加复制文件任务。详细设置如下:

复制文件任务

源文件夹:$(Build.SourcesDirectory)

内容:

**
!**\.git\**

目标文件夹:$(Build.ArtifactStagingDirectory)\upload

FTP上传任务

您只需要更改以下设置,

源文件夹:$(Build.ArtifactStagingDirectory)\upload

文件模式:**

现在排除文件.git夹中的文件,所有文件和文件夹都上传到FTP服务器。

于 2017-08-29T02:54:08.570 回答