我正在使用VSTS和构建任务 FTP上传。将文件和文件夹上载到我的FTP服务器时, .git 文件夹也始终复制到服务器。 我尝试将文件模式排除在 .git 文件夹中,如下所示:
**
!(**/.git/**)
我不知道为什么它不起作用但有没有办法用minimatch模式告诉任务明确排除文件夹?
答案 0 :(得分:10)
FTP上传任务中文件模式选项的迷你匹配模式只能排除文件夹。例如,如果您使用!**\.git\**
作为文件模式,它将只删除.git
文件夹及其中的子文件夹,但这些文件夹中的文件仍会上传到FTP服务器。
如果您不希望将.git
文件夹(包括其中的文件)上传到FTP,则可以在FTP上载任务之前添加复制文件任务。详细设置如下:
源文件夹:$(Build.SourcesDirectory)
内容:
**
!**\.git\**
目标文件夹:$(Build.ArtifactStagingDirectory)\upload
您只需要更改以下设置,
源文件夹:$(Build.ArtifactStagingDirectory)\upload
文件模式:**
现在排除.git
文件夹中的文件,所有文件和文件夹都上传到FTP服务器。