我在存储库的根目录下有一个.artifactignore,看起来像:
**/*
!**/bin/**/*
!**/obj/**/*
我可以在以下日志中观察到.artifactignore被评估:
Uploading pipeline artifact from d:\a\1\s for build #10471
Information, ApplicationInsightsTelemetrySender will correlate events with X-TFS-Session GUID
Information, DedupManifestArtifactClient will correlate http requests with X-TFS-Session GUID
Information, Using .artifactignore file located at: d:\a\1\s\.artifactignore for globbing
Information, Processing .artifactignore file surfaced 20721 files. Total files under source directory: 21471
正确地排除了bin和obj目录之外的所有内容。我想扩展此.artifactignore,使其具有其他行为:
我尝试了几种变体:
**/*
!**/bin/**/*
!**/obj/**/*
*.pdb
**/*
!**/bin/**/*
!**/obj/**/*
.pdb
**/*
!**/bin/**/*
!**/obj/**/*
**/*.pdb
**/*
!**/bin/**/*
!**/obj/**/*
!!*.pdb
**/*
!**/bin/**/*
!**/obj/**/*
!!**/*.pdb
**/*
!**/bin/
!**/obj/
!!**/*.pdb
我敢肯定还有其他几种变化。所有这些都包含bin文件夹中存在的所有.pdb文件。
如何在不带.pdb文件的情况下发布所有bin和obj文件夹?
如何在不带.pdb文件的情况下发布所有bin和obj文件夹?
恐怕没有这样的现成语法,如果排除了该文件的父目录,则可以重新包含该文件。
这意味着,您使用语法!**/bin/**/*
将父文件夹bin
从.artifactignore
文件中排除,无法重新使用语法*.pdb
或其他任何方法来重新包含文件.pdb
。
作为文档状态:
请参阅Git的指导上的
.gitignore
语法,用于.artifactignore语法是一样的。
要检查细节信息,你可以参考这个线程关于.gitignore
语法。
作为解决此问题的方法,我们可以使用以下语法包括除.pdb
文件之外的所有文件类型:
**/*
!**/bin/**/*.dll
!**/bin/**/*.xml
!**/bin/**/*.config
!**/obj/**/*.dll
!**/obj/**/*.xml
!**/obj/**/*.config
希望这可以帮助。