Versionsverwaltung GitLab 12.2 setzt auf gerichtete azyklische Graphen

Für eine bessere Sequenzierung von Jobs in Pipelines hat GitLab eine neue Methode auf Basis gerichteter azyklischer Graphen eingeführt.

In Pocket speichern vorlesen Druckansicht 14 Kommentare lesen
GitLab 12.2 setzt auf gerichtete azyklische Graphen

(Bild: GitLab)

Lesezeit: 3 Min.
Von
  • Björn Bohn
Inhaltsverzeichnis

Die Versionsverwaltung GitLab ist in Version 12.2 erschienen. Das Release setzt unter anderem gerichtete azyklische Graphen (DAG, engl.: Directed Acyclic Graph) ein, um die Job-Abhängigkeiten in einer Pipeline effizienter zu gestalten.

Darüber hinaus hat das GitLab-Team die Software um ein Designmanagement ergänzt, mit dem die Designer eines Teams ebenfalls mit GitLab ihre Projekte steuern können. Ebenfalls neu ist die Möglichkeit, die Beziehungen von Abhängigkeiten über mehrere Projekte hinweg zu definieren, um Fehlern in der Merge-Reihenfolge vorzubeugen.

In GitLab 12.2 können Nutzer aller GitLab-Versionen das neue Schlüsselwort needs: in ihrer .gitlab-ci.yml-Datei nutzen, um einen Job als Voraussetzung für einen anderen in einer Pipeline zu definieren. Dadurch soll die Plattform zukünftig wissen, dass ein Job gestartet werden kann, sobald der vorherige Job durchgeführt ist, ohne darauf warten zu müssen, dass die gesamte restliche Vorgängerstufe abgearbeitet ist.

Um dieses Verhalten intern umzusetzen, setzt GitLab gerichtete azyklische Graphen sein. Anstelle einer sequenziellen Herangehensweise generiert der Dienst einen komplexen Graphen, der die verschiedenen mit needs: definierten Abhängigkeiten berücksichtigt. Dadurch soll GitLab Pipelines künftig deutlich schneller abarbeiten können.

Wer über ein GitLab-Abonnement der Premium-, Silber-, Ultimate- oder Goldkategorie verfügt, kann das neue Designmanagement in einer Alpha-Version ausprobieren. Dazu müssen Anwender zunächst das Large File Storage (LFS) einschalten. Danach können sie bei jedem Issue Grafiken hochladen, um etwa verschiedene Designaspekte zu diskutieren. Dadurch sollen die notwendigen Designarbeiten an einer Software direkt in GitLab dokumentiert werden können.

Laden Designer verschiedene Bilder hoch, können diese ebenfalls versioniert werden. Eine Kommentarfunktion für die Bilder ist ebenfalls vorgesehen. Nutzer können auch individuelle Punkte im Bild markieren, um dazu entsprechend Feedback abzugeben. GitLab plant, den Support für verschiedene Workflows von Designern in Zukunft auszuweiten.

Denselben Abostufen wie beim Designmanager ist die Option vorbehalten, die Abhängigkeiten verschiedener Merge Requests über mehrere Projekte hinweg zu definieren. Das soll dem Problem vorbeugen, Merge Requests in einer falschen Reihenfolge bei einem Projekt durchzuführen. Laut GitLab ist dies vor allem für Firmen sinnvoll, die ein Portfolio an verwandten Produkten anbieten, die sich beispielsweise Bibliotheken teilen. Die Projekte seien oft voneinander getrennt, was unter Umständen zu Schwierigkeiten führen kann, wenn es Änderungen gibt, die alle Projekte betreffen.

Eine vollständige Liste der Neuerungen bietet der Blogbeitrag zum Release. GitLab ist sowohl als Software as a Service (SaaS) auf GitLab.com als auch für den Einsatz im Rechenzentrum verfügbar. Beide Optionen kennen jeweils eine freie Variante und darüber hinaus drei unterschiedliche kommerzielle Pakete. (bbo)