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