VSTS Minimatch模式排除.git文件夹

Mic*_*142 0 minimatch azure-devops azure-pipelines-build-task azure-pipelines

我正在使用VSTS和构​​建任务FTP上传.将文件和文件夹上载到我的FTP服务器时,.git文件夹也始终复制到服务器.我试图用文件模式排除.git文件夹,如下所示:

**
!(**/.git/**)
Run Code Online (Sandbox Code Playgroud)

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

Mar*_*Liu 13

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

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

复制文件任务

源文件夹: $(Build.SourcesDirectory)

内容:

**
!**\.git\**
Run Code Online (Sandbox Code Playgroud)

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

FTP上传任务

您只需要更改以下设置,

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

文件模式: **

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