Azure devops 要排除.git文件夹的VSTS最小匹配模式
我正在使用VST和构建任务FTP上载。将文件和文件夹上载到我的FTP服务器时,.git文件夹也始终复制到服务器。 我试图用如下文件模式排除.git文件夹:Azure devops 要排除.git文件夹的VSTS最小匹配模式,azure-devops,azure-pipelines,azure-pipelines-build-task,minimatch,Azure Devops,Azure Pipelines,Azure Pipelines Build Task,Minimatch,我正在使用VST和构建任务FTP上载。将文件和文件夹上载到我的FTP服务器时,.git文件夹也始终复制到服务器。 我试图用如下文件模式排除.git文件夹: ** !(**/.git/**) 我不知道为什么它不起作用,但有没有办法告诉使用minimatch模式的任务明确排除文件夹?FTP上载任务中文件模式选项的minimatch模式只能排除文件夹。例如,如果您使用!**\。git\**作为文件模式,它只会删除.git文件夹及其子文件夹,但这些文件夹中的文件仍会上载到FTP服务器 如果不希望将.g
**
!(**/.git/**)
我不知道为什么它不起作用,但有没有办法告诉使用minimatch模式的任务明确排除文件夹?FTP上载任务中文件模式选项的minimatch模式只能排除文件夹。例如,如果您使用
!**\。git\**
作为文件模式,它只会删除.git
文件夹及其子文件夹,但这些文件夹中的文件仍会上载到FTP服务器
如果不希望将.git
文件夹(包括其中的文件)上载到FTP,可以在FTP上载任务之前添加复制文件任务。详细设置如下:
复制文件任务
源文件夹:$(Build.SourcesDirectory)
内容:
**
!**\.git\**
目标文件夹:$(Build.ArtifactStagingDirectory)\upload
FTP上传任务
您只需更改以下设置
源文件夹:$(Build.ArtifactStagingDirectory)\upload
文件模式:**
现在排除
.git
文件夹中的文件,所有文件和文件夹都上载到FTP服务器。这似乎确实解决了问题,我发现文档在这种情况下有点误导tbh