Prozess Typ
Grafischer Ausdruck
Denken Typ
Strukturierter Ausdruck
Notizen Typ
Effizienter Ausdruck

Git-DiagrammSyntax

Git-Diagramm

Ein Git-Diagramm ist eine visuelle Darstellung von Git-Commits und Git-Operationen auf verschiedenen Branches.

Git-Diagramme sind besonders hilfreich für Entwickler und Betriebsteams, um ihre Git-Branch-Strategie zu teilen.

Mermaid kann Git-Diagramme rendern

Code
                            
Kopieren
Einbetten
--- title: Example Git diagram --- gitGraph commit commit branch develop checkout develop commit commit checkout main merge develop commit commit

Mermaid unterstützt grundlegende Git-Operationen, zum Beispiel:

  • commit : Stellt einen neuen Commit auf dem aktuellen Branch dar.
  • branch : Erstellt einen neuen Branch und wechselt dorthin, während er als aktueller Branch festgelegt wird.
  • checkout : Wechselt zu einem bereits vorhandenen Branch und legt ihn als aktuellen Branch fest.
  • merge : Führt einen vorhandenen Branch in den aktuellen Branch zusammen.

Mit diesen Git-Operationen kannst du Git-Diagramme in Mermaid sehr einfach und schnell zeichnen. Entitätsnamen beginnen üblicherweise mit einem Großbuchstaben, obwohl es dafür keinen anerkannten Standard gibt und es in Mermaid nicht erforderlich ist.

Hinweis: checkout und switch können austauschbar verwendet werden.

Syntax

Die Mermaid-Syntax für Git-Diagramme ist sehr direkt und einfach. Sie verwendet einen deklarativen Ansatz, bei dem jeder Commit in der Reihenfolge seines Auftretens im Code auf der Zeitachse des Git-Diagramms gezeichnet wird. Im Wesentlichen folgt sie der Einfügereihenfolge jedes Befehls.

Deklariere zunächst mit der gitGraph-Syntax deinen Diagrammtyp. Die gitGraph-Syntax teilt Mermaid mit, dass du ein Git-Diagramm zeichnen möchtest, und parst den Diagrammcode entsprechend.

Jedes Git-Diagramm wird mit dem main-Branch initialisiert. Sofern du keine anderen Branches erstellst, gehen Commits standardmäßig in den Hauptbranch. Dies ist durch die Arbeitsweise von git bedingt: Am Anfang beginnst du immer mit dem Hauptbranch. Standardmäßig wird der main-Branch als aktueller Branch festgelegt.

Du kannst mit der commit-Syntax einen Commit auf dem aktuellen Branch registrieren; schauen wir uns an, wie das funktioniert:

Ein einfaches Git-Diagramm, das drei Commits des Standardbranches main zeigt:

Code
                            
Kopieren
Einbetten
gitGraph commit commit commit

Wenn du das vorherige Beispiel genau betrachtest, kannst du den Standardbranch main sowie drei Commits erkennen. Beachte außerdem, dass jedem Commit standardmäßig eine eindeutige und zufällige ID zugewiesen wird.

Benutzerdefinierte Commit-ID hinzufügen

Für einen bestimmten Commit kannst du bei der Deklaration mit der id-Eigenschaft eine benutzerdefinierte ID angeben, dann einen Doppelpunkt : hinzufügen und den benutzerdefinierten Wert in doppelte Anführungszeichen setzen.

Schauen wir uns anhand des folgenden Diagramms an, wie das funktioniert:

Code
                            
Kopieren
Einbetten
gitGraph commit id: "Alpha" commit id: "Beta" commit id: "Gamma"

在此示例中,我们给提交分配了自定义 ID。

Commit-Typ ändern

In Mermaid gibt es drei Arten von Commits, die im Diagramm leicht unterschiedlich gerendert werden. Diese Typen sind:

  • NORMAL : Standard-Commit-Typ, dargestellt durch einen ausgefüllten Kreis
  • REVERSE : Betont, dass der Commit ein umgekehrter Commit ist, dargestellt durch einen ausgefüllten Kreis mit Kreuz.
  • HIGHLIGHT : Hebt einen bestimmten Commit hervor, dargestellt durch ein ausgefülltes Rechteck.

Für einen bestimmten Commit kannst du bei der Deklaration mit der type-Eigenschaft seinen Typ angeben, gefolgt von einem Doppelpunkt : und der oben erläuterten gewünschten Typoption. Zum Beispiel: commit type:

Hinweis: Wenn kein Commit-Typ angegeben wird, wird standardmäßig NORMAL ausgewählt

Schauen wir uns anhand des folgenden Diagramms an, wie diese verschiedenen Commit-Typen ablaufen:

Code
                            
Kopieren
Einbetten
gitGraph commit id: "Normal" commit commit id: "Reverse" type: REVERSE commit commit id: "Highlight" type: HIGHLIGHT commit

In diesem Beispiel haben wir für jeden Commit einen anderen Typ angegeben. Beachte außerdem, wie wir bei der Deklaration des Commits sowohl id als auch type angegeben haben.

Tag hinzufügen

Für einen bestimmten Commit kannst du ihn mit tag verzieren, ähnlich dem Konzept eines Tags oder einer Release-Version in der git world. Du kannst beim Deklarieren des Commits mit der tag-Eigenschaft ein benutzerdefiniertes Tag anhängen, gefolgt von einem Doppelpunkt :, und den benutzerdefinierten Wert in doppelte Anführungszeichen setzen.

Code
                            
Kopieren
Einbetten
gitGraph commit commit id: "Normal" tag: "v1.0.0" commit commit id: "Reverse" type: REVERSE tag: "RC_1" commit commit id: "Highlight" type: HIGHLIGHT tag: "8.8.4" commit

In diesem Beispiel haben wir ein benutzerdefiniertes Tag für den Commit festgelegt.

Neuen Branch erstellen

Um in Mermaid einen neuen Branch zu erstellen, kannst du die branch-Syntax verwenden. Du musst außerdem den Namen des neuen Branches angeben. Der Name muss eindeutig sein und darf nicht der Name eines vorhandenen Branches sein.

Wenn Mermaid die branch-Syntax liest, erstellt es einen neuen Branch und legt ihn als aktuellen Branch fest. Das entspricht dem Erstellen eines neuen Branches im Git-Diagramm und dem Wechseln zu diesem Branch.

Code
                            
Kopieren
Einbetten
gitGraph commit commit branch develop commit commit commit

In diesem Beispiel siehst du, wie wir mit dem Standardbranch main beginnen und zwei Commits darauf pushen. Dann haben wir den Branch develop erstellt, und alle nachfolgenden Commits wurden auf den Branch develop gesetzt, da er zum aktuellen Branch wurde.

Vorhandenen Branch auschecken

Um in Mermaid zu einem vorhandenen Branch zu wechseln, kannst du die checkout-Syntax verwenden; außerdem musst du den Namen des vorhandenen Branches angeben. Wenn kein Branch mit dem angegebenen Namen gefunden wird, führt dies zu einem Konsolenfehler. Anwendungsbeispiel: checkout develop

Wenn Mermaid die checkout-Syntax liest, findet es den Branch mit dem angegebenen Namen und legt ihn als aktuellen Branch fest. Das entspricht dem Auschecken eines Branches in Git.

Code
                            
Kopieren
Einbetten
gitGraph commit commit branch develop commit commit commit checkout main commit commit

In diesem Beispiel beginnen wir zunächst mit dem Standardbranch main und pushen zweimal darauf. Dann haben wir den Branch develop erstellt, und anschließend wurden alle drei Commits auf den Branch develop gesetzt, da er zum aktuellen Branch wurde. Danach haben wir mit der checkout-Syntax den aktuellen Branch auf main gesetzt, und alle nachfolgenden Commits werden auf dem Branch main registriert.

Zwei Branches zusammenführen

Um in Mermaid einen Branch zusammenzuführen oder mit einem vorhandenen Branch zu verbinden, musst du die merge-Syntax verwenden. Gleichzeitig musst du den Namen eines vorhandenen Branches angeben, der zusammengeführt werden soll. Wenn kein Branch mit dem angegebenen Namen gefunden wird, wird ein Fehler in der Konsole angezeigt. Außerdem kannst du nur zwei unabhängige Branches zusammenführen und einen Branch nicht mit sich selbst zusammenführen.

Syntaxbeispiel: merge develop

Wenn Mermaid die merge-Syntax liest, findet es den angegebenen Branch und dessen letzten Commit und führt ihn mit dem letzten Commit des aktuellen Branches zusammen. Dargestellt durch einen ausgefüllten Doppelkreis.

Im Folgenden findest du ein Beispiel für das Zusammenführen zweier Branches:

Code
                            
Kopieren
Einbetten
gitGraph commit commit branch develop commit commit commit checkout main commit commit merge develop commit commit

In diesem Beispiel beginnen wir zunächst mit dem Branch main und pushen zweimal darauf. Dann haben wir den Branch develop erstellt und drei Commits auf den Branch develop gepusht. Danach haben wir mit der checkout-Syntax den aktuellen Branch auf main gesetzt, und alle nachfolgenden Commits beziehen sich auf den Branch main. Schließlich haben wir den Branch develop in den Branch main zusammengeführt, wodurch ein Merge-Commit entsteht. Da der aktuelle Branch zu diesem Zeitpunkt weiterhin main ist, werden die letzten beiden Commits auf diesem Branch registriert.

Du kannst deiner Zusammenführung auch ähnliche Eigenschaften hinzufügen:

  • id überschreibt die Standard-ID mit einer benutzerdefinierten ID
  • tag fügt dem Merge-Commit ein benutzerdefiniertes Tag hinzu
  • type überschreibt den Standardtyp des Merge-Commits. Du kannst die zuvor erwähnten anderen Commit-Typen verwenden.
Code
                            
Kopieren
Einbetten
gitGraph commit id: "1" commit id: "2" branch nice_feature checkout nice_feature commit id: "3" checkout main commit id: "4" checkout nice_feature branch very_nice_feature checkout very_nice_feature commit id: "5" checkout main commit id: "6" checkout nice_feature commit id: "7" checkout main merge nice_feature id: "customID" tag: "customTag" type: REVERSE checkout very_nice_feature commit id: "8" checkout main commit id: "9"

Commits selektiv aus einem anderen Branch zusammenführen

Mermaid unterstützt das Auswählen eines Commits aus einem anderen Branch in den aktuellen Branch. Du kannst auch die cherry-pick-Syntax verwenden, um einen Commit aus einem anderen Branch auszuwählen.

Um die cherry-pick-Syntax zu verwenden, musst du mit der id-Eigenschaft eine id angeben und dann nach dem Doppelpunkt : die gewünschte Commit-id schreiben und in doppelte Anführungszeichen setzen. Zum Beispiel:

Hier sind einige wichtige Regeln, die zu beachten sind:

  • Du musst eine id angeben, um einen vorhandenen Commit auszuwählen. Wenn die angegebene Commit-ID nicht existiert, führt dies zu einem Fehler. Verwende dazu das Format commit id:$value, um den Commit zu deklarieren.
  • Der angegebene Commit darf nicht auf dem aktuellen Branch existieren; der ausgewählte Commit muss immer aus einem anderen Branch als dem aktuellen stammen.
  • Der aktuelle Branch muss mindestens einen Commit haben, bevor ein cherry-pick durchgeführt werden kann, andernfalls führt dies zu einem Fehler.
  • Beim Auswählen eines Merge-Commits muss die Eltern-Commit-ID angegeben werden. Wenn die Eltern-Eigenschaft weggelassen oder eine ungültige Eltern-Commit-ID angegeben wird, wird ein Fehler ausgelöst.
  • Der angegebene Eltern-Commit muss der direkte Eltern-Commit des ausgewählten Merge-Commits sein.
Code
                            
Kopieren
Einbetten
gitGraph commit id: "ZERO" branch develop branch release commit id:"A" checkout main commit id:"ONE" checkout develop commit id:"B" checkout main merge develop id:"MERGE" commit id:"TWO" checkout release cherry-pick id:"MERGE" parent:"B" commit id:"THREE" checkout develop commit id:"C"

Spezifische Konfigurationsoptionen

Im Mermaid Git-Diagramm kannst du die folgenden Optionen konfigurieren:

  • showBranches : Boolescher Wert, Standard ist true. Wenn auf false gesetzt, werden Branches nicht angezeigt.
  • showCommitLabel : Boolescher Wert, Standard ist true. Wenn auf false gesetzt, wird das Commit-Label nicht angezeigt.
  • mainBranchName : Zeichenkette, Standard ist main. Der Name des Standardbranches.
  • mainBranchOrder : Die Position des Hauptbranches in der Branch-Liste. Standard ist 0, was bedeutet, dass der main-Branch standardmäßig an erster Stelle steht.
  • parallelCommits : Boolescher Wert, Standard ist false. Wenn auf true gesetzt, werden Commits mit Abstand zum übergeordneten Element auf derselben Ebene angezeigt.

Branch-Namen und Verbindungslinie ausblenden

Manchmal möchtest du vielleicht die Branch-Namen und Verbindungslinien ausblenden. Du kannst dies mit der showBranches-Syntax erreichen. Standardmäßig ist ihr Wert true; du kannst sie mit einer Direktive auf false setzen.

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'base' gitGraph: showBranches: false --- gitGraph commit branch hotfix checkout hotfix commit branch develop checkout develop commit id:"ash" tag:"abc" branch featureB checkout featureB commit type:HIGHLIGHT checkout main checkout hotfix commit type:NORMAL checkout develop commit type:REVERSE checkout featureB commit checkout main merge hotfix checkout featureB commit checkout develop branch featureA commit checkout develop merge hotfix checkout featureA commit checkout featureB commit checkout develop merge featureA branch release checkout release commit checkout main commit checkout release merge main checkout develop merge release

Layout des Commit-Labels: Gedreht oder horizontal

Mermaid unterstützt zwei Arten von Layouts für Commit-Labels. Das Standardlayout ist gedreht, das heißt, das Label wird unterhalb des Commit-Kreises platziert und um 45 Grad gedreht, um eine bessere Lesbarkeit zu erzielen. Dies ist besonders nützlich für Commits mit langen Labels.

Ein anderer Typ ist horizontal, das heißt, das Label wird unterhalb des Commit-Kreises platziert und horizontal zentriert angezeigt, ohne gedreht zu werden. Dies ist besonders nützlich für Commits mit kurzen Labels.

Du kannst das Layout des Commit-Labels ändern, indem du in der Direktive die rotateCommitLabel-Syntax verwendest. Sie ist standardmäßig true, was bedeutet, dass das Commit-Label gedreht wird.

Anwendungsbeispiel: Gedrehtes Commit-Label

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'base' gitGraph: rotateCommitLabel: true --- gitGraph commit id: "feat(api): ..." commit id: "a" commit id: "b" commit id: "fix(client): .extra long label.." branch c2 commit id: "feat(modules): ..." commit id: "test(client): ..." checkout main commit id: "fix(api): ..." commit id: "ci: ..." branch b1 commit branch b2 commit

Anwendungsbeispiel: Horizontales Commit-Label

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'base' gitGraph: rotateCommitLabel: false --- gitGraph commit id: "feat(api): ..." commit id: "a" commit id: "b" commit id: "fix(client): .extra long label.." branch c2 commit id: "feat(modules): ..." commit id: "test(client): ..." checkout main commit id: "fix(api): ..." commit id: "ci: ..." branch b1 commit branch b2 commit

Commit-Label ausblenden

Manchmal möchtest du vielleicht das Commit-Label ausblenden. Du kannst dies mit der showCommitLabel-Syntax erreichen. Standardmäßig ist ihr Wert true; du kannst sie mit einer Direktive auf false setzen.

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'base' gitGraph: showBranches: false showCommitLabel: false --- gitGraph commit branch hotfix checkout hotfix commit branch develop checkout develop commit id:"ash" branch featureB checkout featureB commit type:HIGHLIGHT checkout main checkout hotfix commit type:NORMAL checkout develop commit type:REVERSE checkout featureB commit checkout main merge hotfix checkout featureB commit checkout develop branch featureA commit checkout develop merge hotfix checkout featureA commit checkout featureB commit checkout develop merge featureA branch release checkout release commit checkout main commit checkout release merge main checkout develop merge release

Benutzerdefinierter Name des Hauptbranches

Manchmal möchtest du vielleicht den Namen des Hauptbranches anpassen. Du kannst dies mit der mainBranchName-Syntax erreichen. Standardmäßig ist ihr Wert main; du kannst sie mit einer Direktive auf eine beliebige Zeichenkette setzen.

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'base' gitGraph: showBranches: true showCommitLabel: true mainBranchName: 'MetroLine1' --- gitGraph commit id:"NewYork" commit id:"Dallas" branch MetroLine2 commit id:"LosAngeles" commit id:"Chicago" commit id:"Houston" branch MetroLine3 commit id:"Phoenix" commit type: HIGHLIGHT id:"Denver" commit id:"Boston" checkout MetroLine1 commit id:"Atlanta" merge MetroLine3 commit id:"Miami" commit id:"Washington" merge MetroLine2 tag:"MY JUNCTION" commit id:"Boston" commit id:"Detroit" commit type:REVERSE id:"SanFrancisco"

Sieh dir den mit Mermaid erstellten virtuellen U-Bahn-Linienplan an. Hier haben wir den Standardnamen des Hauptbranches in MetroLine1 geändert.

Benutzerdefinierte Branch-Reihenfolge

In Mermaid werden Branches standardmäßig in der Reihenfolge angezeigt, in der sie im Diagrammcode definiert wurden oder erscheinen.

Manchmal möchtest du vielleicht die Branch-Reihenfolge anpassen. Du kannst dies erreichen, indem du die order-Syntax neben der Branch-Definition verwendest; du kannst sie auf eine positive Zahl setzen.

Mermaid befolgt die durch die order-Syntax vorgegebene Prioritätsreihenfolge.

  • Der Hauptbranch wird immer zuerst angezeigt, da sein Standard-Reihenfolgenwert 0 ist. (Es sei denn, seine Reihenfolge wurde durch die mainBranchOrder-Syntax in der Konfiguration geändert und von 0 abweichend geändert)
  • Als Nächstes werden alle Branches ohne order in der Reihenfolge angezeigt, in der sie im Diagrammcode erscheinen.
  • Als Nächstes werden alle Branches mit order in der Reihenfolge ihres order-Werts angezeigt.

Um die Reihenfolge aller Branches vollständig zu steuern, muss für alle Branches order definiert werden.

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'base' gitGraph: showBranches: true showCommitLabel: true --- gitGraph commit branch test1 order: 3 branch test2 order: 2 branch test3 order: 1

Im obigen Diagramm folgen alle Branches der definierten Reihenfolge.

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'base' gitGraph: showBranches: true showCommitLabel: true mainBranchOrder: 2 --- gitGraph commit branch test1 order: 3 branch test2 branch test3 branch test4 order: 1

Im obigen Diagramm werden alle Branches ohne angegebene Reihenfolge in der definierten Reihenfolge gezeichnet. Danach wird der Branch test4 gezeichnet, da seine Reihenfolge 1 ist. Als Nächstes wird der Branch main gezeichnet, da seine Reihenfolge 2 ist. Schließlich wird der Branch test1 gezeichnet, da seine Reihenfolge 3 ist.

Hinweis: Da wir mainBranchOrder auf 2 überschrieben haben, wird der Branch main nicht am Anfang gezeichnet, sondern in der Reihenfolge angezeigt.

Hier haben wir den Standardnamen des Hauptbranches in MetroLine1 geändert.

Richtung

Mermaid unterstützt drei Richtungen: von links nach rechts (Standard), von oben nach unten und von unten nach oben.

Von links nach rechts (Standard, LR:)

In Mermaid verläuft die Standardrichtung von links nach rechts, wobei die Branches übereinander gestapelt werden.

Du kannst diesen Wert jedoch explizit mit LR: nach der gitGraph-Syntax festlegen.

Code
                            
Kopieren
Einbetten
gitGraph LR: commit commit branch develop commit commit checkout main commit commit merge develop commit commit

Von oben nach unten (TB:)

In der Richtung von oben nach unten verlaufen Commits vom oberen zum unteren Rand des Diagramms, und die Branches werden nebeneinander angeordnet.

Um das Diagramm auf diese Weise auszurichten, musst du TB: nach der gitGraph-Syntax hinzufügen.

Code
                            
Kopieren
Einbetten
gitGraph TB: commit commit branch develop commit commit checkout main commit commit merge develop commit commit

Von unten nach oben (BT:)

In der Richtung von unten nach oben verlaufen Commits vom unteren zum oberen Rand des Diagramms, und die Branches werden nebeneinander angeordnet.

Um das Diagramm auf diese Weise auszurichten, musst du BT: nach der gitGraph-Syntax hinzufügen.

Code
                            
Kopieren
Einbetten
gitGraph BT: commit commit branch develop commit commit checkout main commit commit merge develop commit commit

Temporäre Commits (parallelCommits: false)

Code
                            
Kopieren
Einbetten
--- config: gitGraph: parallelCommits: false --- gitGraph: commit branch develop commit commit checkout main commit commit

Parallele Commits (parallelCommits: true)

Code
                            
Kopieren
Einbetten
--- config: gitGraph: parallelCommits: true --- gitGraph: commit branch develop commit commit checkout main commit commit

Thema

Mermaid unterstützt eine Reihe benutzerdefinierter Themen, mit denen du ein zu dir passendes Thema finden kannst. Hinweis: Du kannst tatsächlich die Variablen eines vorhandenen Themas überschreiben, um dein eigenes benutzerdefiniertes Thema zu erstellen.

Im Folgenden findest du die verschiedenen Optionen für benutzerdefinierte Themen:

  • redux-color
  • redux-dark-color
  • redux
  • redux-dark
  • default
  • neutral
  • dark
  • forest
  • neo
  • neo-dark
  • base

Um das Thema zu ändern, kannst du die initialize-Syntax verwenden.

Basis-Thema

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'base' --- gitGraph commit branch hotfix checkout hotfix commit branch develop checkout develop commit id:"ash" tag:"abc" branch featureB checkout featureB commit type:HIGHLIGHT checkout main checkout hotfix commit type:NORMAL checkout develop commit type:REVERSE checkout featureB commit checkout main merge hotfix checkout featureB commit checkout develop branch featureA commit checkout develop merge hotfix checkout featureA commit checkout featureB commit checkout develop merge featureA branch release checkout release commit checkout main commit checkout release merge main checkout develop merge release

Wald-Thema

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'forest' --- gitGraph commit branch hotfix checkout hotfix commit branch develop checkout develop commit id:"ash" tag:"abc" branch featureB checkout featureB commit type:HIGHLIGHT checkout main checkout hotfix commit type:NORMAL checkout develop commit type:REVERSE checkout featureB commit checkout main merge hotfix checkout featureB commit checkout develop branch featureA commit checkout develop merge hotfix checkout featureA commit checkout featureB commit checkout develop merge featureA branch release checkout release commit checkout main commit checkout release merge main checkout develop merge release

Standard-Thema

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'default' --- gitGraph commit type:HIGHLIGHT branch hotfix checkout hotfix commit branch develop checkout develop commit id:"ash" tag:"abc" branch featureB checkout featureB commit type:HIGHLIGHT checkout main checkout hotfix commit type:NORMAL checkout develop commit type:REVERSE checkout featureB commit checkout main merge hotfix checkout featureB commit checkout develop branch featureA commit checkout develop merge hotfix checkout featureA commit checkout featureB commit checkout develop merge featureA branch release checkout release commit checkout main commit checkout release merge main checkout develop merge release

Dunkles Thema

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'dark' --- gitGraph commit branch hotfix checkout hotfix commit branch develop checkout develop commit id:"ash" tag:"abc" branch featureB checkout featureB commit type:HIGHLIGHT checkout main checkout hotfix commit type:NORMAL checkout develop commit type:REVERSE checkout featureB commit checkout main merge hotfix checkout featureB commit checkout develop branch featureA commit checkout develop merge hotfix checkout featureA commit checkout featureB commit checkout develop merge featureA branch release checkout release commit checkout main commit checkout release merge main checkout develop merge release

Neutrales Thema

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'neutral' --- gitGraph commit branch hotfix checkout hotfix commit branch develop checkout develop commit id:"ash" tag:"abc" branch featureB checkout featureB commit type:HIGHLIGHT checkout main checkout hotfix commit type:NORMAL checkout develop commit type:REVERSE checkout featureB commit checkout main merge hotfix checkout featureB commit checkout develop branch featureA commit checkout develop merge hotfix checkout featureA commit checkout featureB commit checkout develop merge featureA branch release checkout release commit checkout main commit checkout release merge main checkout develop merge release

Mit Themenvariablen anpassen

Mermaid ermöglicht es dir, dein Diagramm mit Themenvariablen anzupassen; diese Variablen steuern das Aussehen und den Stil der einzelnen Elemente des Diagramms.

Zum besseren Verständnis nehmen wir das Thema default als Beispiel; die Standardwerte der Themenvariablen werden automatisch aus dem Thema übernommen.

Verwende das Thema default, um die Farbe der Branches festzulegen:

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'default' --- gitGraph commit branch develop commit tag:"v1.0.0" commit checkout main commit type: HIGHLIGHT commit merge develop commit branch featureA commit

Mermaid unterstützt Themenvariablen zum Überschreiben der Standardwerte für bis zu 8 Branches, d. h. du kannst mit Themenvariablen die Farben von bis zu 8 Branches festlegen. Nach mehr als 8 Branches werden die Themenvariablen zyklisch wiederverwendet, d. h. der 9. Branch verwendet den Stil des 1. Branches.

Benutzerdefinierte Branch-Farbe

Du kannst die Themenvariablen git0 bis git7 verwenden, um die Branch-Farben anzupassen. Mermaid ermöglicht es dir, die Farben von bis zu 8 Branches festzulegen, wobei die Variable git0 die Farbe des ersten Branches steuert, git1 die Farbe des zweiten Branches und so weiter.

Hinweis: Die Standardwerte dieser Themenvariablen werden aus dem ausgewählten Thema übernommen. Wenn du die Standardwerte überschreiben möchtest, kannst du mit der initialize-Syntax benutzerdefinierte Themenvariablenwerte hinzufügen.

Beispiel:

Jetzt überschreiben wir die Standardwerte der Variablen git0 bis git3:

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'default' themeVariables: 'git0': '#ff0000' 'git1': '#00ff00' 'git2': '#0000ff' 'git3': '#ff00ff' 'git4': '#00ffff' 'git5': '#ffff00' 'git6': '#ff00ff' 'git7': '#00ffff' --- gitGraph commit branch develop commit tag:"v1.0.0" commit checkout main commit type: HIGHLIGHT commit merge develop commit branch featureA commit

Benutzerdefinierte Farbe des Branch-Labels

Du kannst die Themenvariablen gitBranchLabel0 bis gitBranchLabel7 verwenden, um die Farbe der Branch-Labels anzupassen. Mermaid ermöglicht es dir, die Farben von bis zu 8 Branches festzulegen, wobei die Variable gitBranchLabel0 die Farbe des ersten Branch-Labels steuert, die Variable gitBranchLabel1 die Farbe des zweiten Branch-Labels und so weiter.

Schauen wir uns an, wie man mit dem Thema default die Farbe der Branch-Labels festlegt:

Jetzt überschreiben wir die Standardwerte der Variablen gitBranchLabel0 bis gitBranchLabel2:

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'default' themeVariables: 'gitBranchLabel0': '#ffffff' 'gitBranchLabel1': '#ffffff' 'gitBranchLabel2': '#ffffff' 'gitBranchLabel3': '#ffffff' 'gitBranchLabel4': '#ffffff' 'gitBranchLabel5': '#ffffff' 'gitBranchLabel6': '#ffffff' 'gitBranchLabel7': '#ffffff' 'gitBranchLabel8': '#ffffff' 'gitBranchLabel9': '#ffffff' --- gitGraph checkout main branch branch1 branch branch2 branch branch3 branch branch4 branch branch5 branch branch6 branch branch7 branch branch8 branch branch9 checkout branch1 commit

Hier kannst du sehen, dass die Farben und Stile von branch8 und branch9 jeweils von den Branches an Indexposition 0 (main) und 1 (branch1) übernommen werden.

Benutzerdefinierte Commit-Farbe

Du kannst die Themenvariablen commitLabelColor und commitLabelBackground verwenden, um die Farbe und die Hintergrundfarbe des Commit-Labels getrennt anzupassen.

Beispiel: Jetzt überschreiben wir die Standardwerte der Variablen commitLabelColor bis commitLabelBackground:

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'default' themeVariables: commitLabelColor: '#ff0000' commitLabelBackground: '#00ff00' --- gitGraph commit branch develop commit tag:"v1.0.0" commit checkout main commit type: HIGHLIGHT commit merge develop commit branch featureA commit

mermaid.grammar_mermaid_commit_label_define_label_font_big_small

Du kannst die Themenvariable commitLabelFontSize verwenden, um die Schriftgröße des Commit-Labels anzupassen.

Beispiel: Jetzt überschreiben wir die Standardwerte der Variable commitLabelFontSize:

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'default' themeVariables: commitLabelColor: '#ff0000' commitLabelBackground: '#00ff00' commitLabelFontSize: '16px' --- gitGraph commit branch develop commit tag:"v1.0.0" commit checkout main commit type: HIGHLIGHT commit merge develop commit branch featureA commit

Benutzerdefinierte Schriftgröße des Labels

Du kannst die Themenvariable tagLabelFontSize verwenden, um die Schriftgröße des Labels anzupassen.

Beispiel: Jetzt überschreiben wir die Standardwerte der Variable tagLabelFontSize:

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'default' themeVariables: commitLabelColor: '#ff0000' commitLabelBackground: '#00ff00' tagLabelFontSize: '16px' --- gitGraph commit branch develop commit tag:"v1.0.0" commit checkout main commit type: HIGHLIGHT commit merge develop commit branch featureA commit

Benutzerdefinierte Label-Farbe

Du kannst die Themenvariablen tagLabelColor, tagLabelBackground und tagLabelBorder verwenden, um das Label anzupassen und jeweils die Textfarbe, die Hintergrundfarbe und den Rahmen des Labels zu ändern.

Beispiel: Jetzt überschreiben wir die Standardwerte der Variablen tagLabelColor, tagLabelBackground und tagLabelBorder:

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'default' themeVariables: tagLabelColor: '#ff0000' tagLabelBackground: '#00ff00' tagLabelBorder: '#0000ff' --- gitGraph commit branch develop commit tag:"v1.0.0" commit checkout main commit type: HIGHLIGHT commit merge develop commit branch featureA commit

Benutzerdefinierte Farbe hervorhebender Commits

Du kannst die Themenvariablen gitInv0 bis gitInv7 verwenden, um die Farbe hervorgehobener Commits je nach ihrem Branch anzupassen. Mermaid ermöglicht es dir, die Farbe bestimmter hervorgehobener Commits für bis zu 8 Branches festzulegen, wobei die Variable gitInv0 die Farbe der hervorgehobenen Commits des ersten Branches steuert, die Variable gitInv1 die Farbe der hervorgehobenen Commits des zweiten Branches und so weiter.

Jetzt überschreiben wir die Standardwerte der Variablen git0 bis git3:

Code
                            
Kopieren
Einbetten
--- config: logLevel: 'debug' theme: 'default' themeVariables: 'gitInv0': '#ff0000' --- gitGraph commit branch develop commit tag:"v1.0.0" commit checkout main commit type: HIGHLIGHT commit merge develop commit branch featureA commit