Wie kann ich Bitrise so einstellen, dass nur bei bestimmten Git-Branch-Änderungen Builds ausgeführt werden?
- Übersicht der Trigger-Build-Konfiguration in Bitrise
- Schritt-für-Schritt: Einstellungen vornehmen
- Technische Details zur Konfiguration
- Zusammenfassung
Wenn du in Bitrise sicherstellen möchtest, dass Builds nur bei Änderungen an bestimmten Git-Branches gestartet werden, kannst du das über die Trigger-Einstellungen in deinem Bitrise-Projekt steuern. Dies ist besonders nützlich, wenn du beispielsweise nur für den Hauptbranch (wie main oder master) oder für Release-Branches automatische Builds ausführen möchtest und nicht bei jeder Änderung an Feature-Branches.
Übersicht der Trigger-Build-Konfiguration in Bitrise
Bitrise arbeitet mit sogenannten Trigger Maps, um zu definieren, wann ein neuer Build gestartet wird. Diese Trigger-Build-Regeln können über die Bitrise-Weboberfläche angepasst werden. Dabei lassen sich Bedingungen auf den Git-Branch, den Tag oder den Pull-Request-Zustand festlegen. Das bedeutet, du kannst genau definieren, welche Branches einen Build auslösen und welche nicht.
Schritt-für-Schritt: Einstellungen vornehmen
Öffne zunächst dein Projekt auf der Bitrise-Webseite und navigiere in die Einstellungen deines Workflows. Dort findest du den Bereich Triggers (Trigger Map). In diesem Abschnitt kannst du die Zuordnung zwischen Event-Typen und den Branch-Namen festlegen. Wenn dort beispielsweise nur der Branch main angegeben ist, dann startet Bitrise nur Builds beim Push auf diesen Branch.
Die Angabe erfolgt meist in Form von Branch-Mustern, also kannst du auch Wildcards nutzen, zum Beispiel release/*, um jeden Branch mit dem Präfix release/ zu berücksichtigen. Möchtest du, dass Builds nur beim Merge in develop und main ausgeführt werden, trägst du diese Branch-Namen in der Trigger Map ein und entfernst alle anderen.
Technische Details zur Konfiguration
Unter dem Menüpunkt Triggers kannst du für jeden Trigger-Eintrag den Event Type definieren, z.B. push oder pull request, und darunter den Branch-Namen oder ein Muster. Wenn ein Push-Event beispielsweise nur für den Branch feature/* ausgeführt werden soll, gibst du dort diesen Branchnamen in der Trigger Map an. Somit filterst du aus, für welche Branches Builds gestartet werden sollen.
Darüber hinaus kann man die Trigger Map auch durch manuelle Bearbeitung der bitrise.yml Datei definieren, falls du die Konfiguration als Code verwalten möchtest. In diesem Fall würdest du den Abschnitt trigger_map anpassen und dort gezielt die Branches und Workflows eintragen, für die der Build gestartet werden soll. Das sieht dann z.B. so aus:
trigger_map:- push_branch: "main" workflow: primary- push_branch: "develop" workflow: develop-workflow- pull_request_source_branch: "feature/*" workflow: feature-workflowWenn ein Push oder Pull Request auf die definierten Branches erfolgt, wird der entsprechende Workflow ausgelöst; für alle anderen Branches erfolgt kein Build.
Zusammenfassung
Um Builds in Bitrise nur bei bestimmten Git-Branch-Änderungen auszuführen, stellst du in der Trigger Map entweder in der Weboberfläche oder in der bitrise.yml nur die Branches ein, die Build-Auslöser sein sollen. Durch Verwendung von Branch-Mustern kannst du flexibel sein und z.B. alle Release-Branches oder nur den Hauptbranch berücksichtigen. So verhinderst du unnötige Builds und optimierst deine CI/CD-Pipeline effizient.
