Freigeben über


Verwenden der Artefaktignore-Datei

Azure DevOps Services

Die artifactignore Datei funktioniert ähnlich wie eine gitignore Datei, dient jedoch einem anderen Zweck. Anstatt dateien anzugeben, die von Git ignoriert werden sollen, wird es in Azure Pipelines verwendet, um zu steuern, welche Dateien beim Veröffentlichen von Pipelineartefakten oder universellen Paketen ausgeschlossen werden. Diese Datei kann dazu beitragen, die Pipelineausführung zu verringern und ihre Effizienz zu verbessern, indem sie verhindern, dass unnötige Dateien vor der Veröffentlichung in das Stagingverzeichnis kopiert werden.

Die Artefaktignore-Datei weist eine ähnliche Syntax wie eine Gitignore-Datei auf und wird in der Regel im Versionssteuerungssystem gespeichert. Im Gegensatz zu gitignore muss sich die Artefaktignore-Datei jedoch nicht immer im Stammverzeichnis Ihres Repositorys befinden. Der Speicherort hängt vom Pfad ab, der in der Veröffentlichungsaufgabe angegeben ist. Wenn die Aufgabe falsch platziert wird, wird sie nicht erkannt, was zu unbeabsichtigten Ergebnissen führt. Wenn der Pfad beispielsweise $(System.DefaultWorkingDirectory)/bin/artifacts ist, sollte die Artefaktignore-Datei im Verzeichnis "/bin/artifacts" abgelegt werden.

Hinweis

Die Artefaktignore-Datei funktioniert nicht mit der Aufgabe PublishBuildArtifacts , verwenden Sie stattdessen die PublishPipelineArtifact-Aufgabe .

Syntax

The .artifactignore follows the same syntax as the .gitignore with a few exceptions. Das Pluszeichen + wird in URL-Pfaden nicht unterstützt, und bestimmte Pakettypen, wie z. B. Maven, können Einschränkungen mit semantischen Versionsverwaltungsmetadaten aufweisen.

Hinweis

Standardmäßig wird die GITIGNORE-Datei ignoriert, es sei denn, Sie haben eine ARTEFEFEFF-Datei . Um sie einzuschließen, erstellen Sie einfach eine leere Artefaktignore-Datei .

Beispiel

In diesem Beispiel werden alle Dateien ignoriert, mit Ausnahme der Dateien, die sich im Verzeichnis "src/MyApp/bin/Release " befinden.

**/*
!src/MyApp/bin/Release/**.*

Um mehrere Dateien oder Ordner einzuschließen, wenn alles andere ausgeschlossen wird, beginnen Sie mit einem Rahmen-Ausschlussmuster (**/*), und fügen Sie dann eine ! vorangestellte Regel für jede Datei oder jedes Verzeichnis hinzu, die Sie behalten möchten. Im folgenden Beispiel werden der dist Ordner und der gesamte Inhalt zusammen mit package.json und .npmrc sind enthalten:

# Exclude everything
**/*

# Re-include the top-level dist folder, its contents, and the specific files
!dist/
!dist/**
!package.json
!.npmrc

Wichtig

Die Artefaktignore-Datei muss in das verzeichnis eingefügt werden, das targetPath im Argument in Der Aufgabe "Pipelineartefakte veröffentlichen " angegeben ist.