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