Erstellen mehrerer Branches mit Azure Pipelines

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019 | TFS 2018

Mit Azure Pipelines können Sie Trigger erstellen, um Ihr Projekt auf jedem neuen Commit und Pull Request auf Ihrem Repository zu erstellen. In diesem Artikel erfahren Sie, wie Sie eine Continuous Integration aktivieren und mehrere Branch-Builds für Ihr Repository einrichten.

Voraussetzungen

  • Ein Azure DevOps-organization und ein Projekt. Erstellen Sie ein organization oder ein Projekt, falls noch nicht geschehen.

  • Eine funktionierende Pipeline. Befolgen Sie die Anweisungen zum Erstellen Ihrer ersten Pipeline, um Ihre Pipeline zu erstellen.

Einrichten eines CI-Triggers für einen Topic-Branch

Beim Arbeiten mit Git ist es üblich, temporäre Verzweigungen aus dem Mainbranch zu erstellen, um einen optimierten Workflow zu erleichtern. Diese Verzweigungen, die häufig als Thema oder Featurebranches bezeichnet werden, dienen dem Zweck, Ihre Arbeit zu isolieren. In diesem Workflow erstellen Sie eine Verzweigung, die einem bestimmten Feature oder Programmfehlerbehebung zugeordnet ist, und nach Abschluss führen Sie den Code wieder in dem Mainbranch zusammen, bevor Sie die Themenverzweigung löschen.

Wenn in Ihrer YAML-Datei kein Trigger explizit angegeben ist, lösen alle an einer Verzweigung vorgenommenen Änderungen eine Ausführung aus. Wenn Sie Trigger sowohl für den Mainbranch als auch für alle Feature-/Verzweigungen hinzufügen möchten, fügen Sie den folgenden Codeausschnitt in die YAML-Datei ein. Dadurch wird sichergestellt, dass Änderungen an diesen Verzweigungen automatisch eine Pipelineausführung auslösen.

trigger:
- main
- feature/*

YAML-Builds sind noch nicht in TFS verfügbar.

Anpassen von Buildaufgaben basierend auf der zu erstellenden Verzweigung

Der Mainbranch ist in der Regel für das Generieren von bereitstellungsfähigen Artefakten wie Binärdateien verantwortlich. Für kurzlebige Featurebranches müssen Sie keine Zeit darauf verschwenden, diese Artefakte zu erstellen und zu speichern. In Azure Pipelines können Sie benutzerdefinierte Bedingungen implementieren, um sicherzustellen, dass bestimmte Aufgaben nur im Mainbranch ausgeführt werden.

Bearbeiten Sie die Datei „azure-pipelines.yml“ in Ihrem Mainbranch, und fügen Sie Ihrer gewünschten Aufgabe eine Bedingung hinzu. Der folgende Codeausschnitt fügt beispielsweise der Aufgabe Pipeline-Artefakte veröffentlichen eine Bedingung hinzu.

- task: PublishPipelineArtifact@1
  condition: and(succeeded(), eq(variables['Build.SourceBranch'], 'refs/heads/main'))

YAML-Builds sind noch nicht in TFS verfügbar.

Überprüfen von Pull Requests

Um den Branch-Schutz sicherzustellen, können Sie Richtlinien verwenden, die erfolgreiche Builds vor dem Zusammenführen von Pull Requests mandatieren. Mit Azure Pipelines haben Sie die Flexibilität, die Anforderung eines neuen erfolgreichen Builds für die Zusammenführung von Änderungen in wichtigen Zweigen wie dem Mainbranch zu konfigurieren.

GitHub-Repository

Wenn Sie pr-Trigger nicht explizit in Ihrer YAML-Datei definieren, werden Pull-Request-Builds für alle Verzweigungen standardmäßig aktiviert. Sie sind jedoch flexibel, die Zielbranches für Ihre Pull Request-Builds anzugeben. Wenn Sie beispielsweise den Build exklusiv für Pull Requests ausführen möchten, die auf den Mainbranch und Verzweigungen abzielen, die mit feature/ beginnen, können Sie die folgende Konfiguration angeben:

pr:
- main
- feature/*

YAML-Builds sind noch nicht in TFS verfügbar.

Azure Repos-Repository

  1. Melden Sie sich bei Ihrer Azure DevOps-Organisation an, und navigieren Sie dann zu Ihrem Projekt.

  2. Wählen Sie „Repositorys“ und dann „Verzweigungen“ aus.

  3. Wählen Sie die Auslassungspunkte rechts neben dem Branchnamen und dann Branchrichtlinien aus.

  4. Wählen Sie im Menü Buildüberprüfung das Pluszeichen (+) aus, um die Option Buildrichtlinie hinzuzufügen.

  5. Wählen Sie ihre Buildpipeline aus dem Einblendmenü aus, und stellen Sie sicher, dass Trigger automatisch festgelegt ist und die Richtlinienanforderung auf erforderlich festgelegt ist.

  6. Geben Sie einen beschreibenden Anzeigenamen ein, um die Richtlinie zu beschreiben.

  7. Wählen Sie Speichern aus, um die Richtlinie zu erstellen und zu aktivieren. Wählen Sie oben links auf dem Bildschirm Änderungen speichern aus, um Ihre Änderungen zu speichern.

A screenshot showing how to add a new build policy.

  1. Zum Testen der Richtlinie navigieren Sie im Azure DevOps-Portal zu Repos>Pull Requests.

  2. Wählen Sie „Neue Pullanforderung“ aus, und stellen Sie sicher, dass Ihr Themenverzweigung so festgelegt ist, dass sie in Ihren Mainbranch zusammengeführt wird, und wählen Sie dann „Erstellen“ aus.

  3. Auf Ihrem Bildschirm können Sie die derzeit ausgeführte Richtlinie sehen.

  4. Wählen Sie den Richtliniennamen aus, um den Build zu untersuchen. Wenn der Build erfolgreich ist, werden Ihre Pull Requests zusammengeführt. Wenn bei dem Build ein Fehler auftritt, wird die Zusammenführung blockiert.

Hinweis

Azure Pipelines unterstützt keine pipelinespezifischen Aufbewahrungsrichtlinien mehr. Es werden Aufbewahrungsregeln auf Projektebene empfohlen.