Einrichtung und Konfiguration
Projekte holen und erstellen
Grundlegende Snapshots
Branching und Merging
Projekte teilen und aktualisieren
Inspektion und Vergleich
Patching
Debugging
Externe Systeme
Server-Administration
Anleitungen
- gitattributes
- Konventionen der Kommandozeile
- Tägliches Git
- Häufig gestellte Fragen (FAQ)
- Glossar
- Hooks
- gitignore
- gitmodules
- Revisionen
- Submodule
- Tutorial
- Workflows
- Alle Anleitungen...
Administration
Plumbing-Befehle
-
2.52.0
2025-11-17
- 2.46.1 → 2.51.2 keine Änderungen
-
2.46.0
2024-07-29
- 2.44.1 → 2.45.4 keine Änderungen
-
2.44.0
2024-02-23
- 2.39.1 → 2.43.7 keine Änderungen
-
2.39.0
2022-12-12
- 2.38.1 → 2.38.5 keine Änderungen
-
2.38.0
2022-10-02
- 2.30.1 → 2.37.7 keine Änderungen
-
2.30.0
2020-12-27
- 2.29.1 → 2.29.3 keine Änderungen
-
2.29.0
2020-10-19
- 2.28.1 keine Änderungen
-
2.28.0
2020-07-27
- 2.27.1 keine Änderungen
-
2.27.0
2020-06-01
- 2.26.1 → 2.26.3 keine Änderungen
-
2.26.0
2020-03-22
- 2.25.1 → 2.25.5 keine Änderungen
- 2.25.0 keine Änderungen
- 2.24.1 → 2.24.4 keine Änderungen
-
2.24.0
2019-11-04
- 2.23.1 → 2.23.4 keine Änderungen
-
2.23.0
2019-08-16
- 2.19.3 → 2.22.5 keine Änderungen
-
2.19.2
2018-11-21
- 2.19.1 keine Änderungen
-
2.19.0
2018-09-10
- 2.18.1 → 2.18.5 keine Änderungen
-
2.18.0
2018-06-21
SYNOPSIS
git commit-graph verify [--object-dir <dir>] [--shallow] [--[no-]progress] git commit-graph write [--object-dir <dir>] [--append] [--split[=<strategy>]] [--reachable | --stdin-packs | --stdin-commits] [--changed-paths] [--[no-]max-new-filters <n>] [--[no-]progress] <split-options>
OPTIONEN
- --object-dir
-
Verwenden Sie das angegebene Verzeichnis für den Speicherort von Pack-Dateien und der Commit-Graph-Datei. Dieser Parameter dient dazu, den Speicherort eines Alternativspeichers anzugeben, der nur das Objektverzeichnis und nicht ein vollständiges
.git-Verzeichnis enthält. Die Commit-Graph-Datei wird im Verzeichnis <dir>/infoerwartet und die Pack-Dateien im Verzeichnis <dir>/pack. Wenn das Verzeichnis nicht in einen absoluten Pfad umgewandelt werden kann oder kein bekanntes Objektverzeichnis darstellt, wirdgitcommit-graph... mit einem Nicht-Null-Status beendet. - --progress
- --no-progress
-
Fortschritt explizit ein- oder ausschalten. Wenn keiner der beiden angegeben ist, wird der Fortschritt angezeigt, wenn die Standardfehlerausgabe mit einem Terminal verbunden ist.
BEFEHLE
- write
-
Schreibt eine Commit-Graph-Datei basierend auf den in den Pack-Dateien gefundenen Commits. Wenn die Konfigurationsoption
core.commitGraphdeaktiviert ist, gibt dieser Befehl eine Warnung aus und kehrt dann erfolgreich zurück, ohne eine Commit-Graph-Datei zu schreiben.Mit der Option
--stdin-packswird der neue Commit-Graph durch Traversieren von Objekten nur in den angegebenen Pack-Indizes generiert. (Kann nicht mit--stdin-commitsoder--reachablekombiniert werden.)Mit der Option
--stdin-commitswird der neue Commit-Graph durch Traversieren von Commits generiert, beginnend mit den in stdin als Liste von OIDs in Hexadezimalform, eine OID pro Zeile, angegebenen Commits. OIDs, die auf Nicht-Commits verweisen (entweder direkt oder durch Abziehen von Tags), werden stillschweigend ignoriert. OIDs, die fehlerhaft sind oder nicht existieren, führen zu einem Fehler. (Kann nicht mit--stdin-packsoder--reachablekombiniert werden.)Mit der Option
--reachablewird der neue Commit-Graph durch Traversieren von Commits generiert, beginnend bei allen Referenzen. (Kann nicht mit--stdin-commitsoder--stdin-packskombiniert werden.)Mit der Option
--appendwerden alle Commits einbezogen, die in der bestehenden Commit-Graph-Datei vorhanden sind.Mit der Option
--changed-pathswerden Informationen über die zwischen einem Commit und seinem ersten Elternteil geänderten Pfade berechnet und geschrieben. Dieser Vorgang kann bei großen Repositories einige Zeit in Anspruch nehmen. Er bietet signifikante Leistungssteigerungen beim Abrufen des Verlaufs eines Verzeichnisses oder einer Datei mitgitlog--<path>. Wenn diese Option angegeben wird, wird bei zukünftigen Schreibvorgängen des Commit-Graphen automatisch davon ausgegangen, dass diese Option beabsichtigt war. Verwenden Sie--no-changed-paths, um das Speichern dieser Daten zu stoppen.--changed-pathswird durch die KonfigurationcommitGraph.changedPaths=trueimpliziert.Mit der Option
--max-new-filters=<n> werden höchstensnneue Bloom-Filter generiert (wenn--changed-pathsangegeben ist). Wennn-1ist, wird keine Begrenzung durchgesetzt. Nur Commits, die in der neuen Schicht vorhanden sind, zählen für dieses Limit. Um Bloom-Filter nachträglich über frühere Schichten zu berechnen, wird empfohlen,--split=replacezu verwenden. Überschreibt die KonfigurationcommitGraph.maxNewFilters.Mit der Option
--split[=<strategy>] wird der Commit-Graph als Kette mehrerer Commit-Graph-Dateien geschrieben, die in <dir>/info/commit-graphsgespeichert sind. Die Commit-Graph-Schichten werden basierend auf der Strategie und anderen Aufteilungsoptionen zusammengeführt. Die neuen Commits, die noch nicht im Commit-Graph enthalten sind, werden in einer neuen "Tip"-Datei hinzugefügt. Diese Datei wird mit der vorhandenen Datei zusammengeführt, wenn die folgenden Zusammenführungsbedingungen erfüllt sind-
Wenn
--split=no-mergeangegeben ist, wird nie eine Zusammenführung durchgeführt, und die übrigen Optionen werden ignoriert.--split=replaceüberschreibt die vorhandene Kette mit einer neuen. Ein bloßes--splitdeferiert auf die übrigen Optionen. (Beachten Sie, dass das Zusammenführen einer Kette von Commit-Graphen die vorhandene Kette durch eine Kette der Länge 1 ersetzt, wobei der erste und einzige inkrementelle Teil den gesamten Graphen enthält). -
Wenn
--size-multiple=<X> nicht angegeben ist, seiXgleich 2. Wenn die neue Tip-DateiNCommits hätte und die vorherige Tip-DateiMCommits hätte undXmalNgrößer alsMwäre, werden stattdessen die beiden Dateien zu einer einzigen Datei zusammengeführt. -
Wenn
--max-commits=<M> mitMals positive ganze Zahl angegeben ist und die neue Tip-Datei mehr alsMCommits hätte, werden stattdessen die neue Tip-Datei mit der vorherigen Tip-Datei zusammengeführt.Schließlich, wenn
--expire-time=<datetime> nicht angegeben ist, seidatetimedie aktuelle Zeit. Nach dem Schreiben des aufgeteilten Commit-Graphen werden alle ungenutzten Commit-Graphen gelöscht, deren Änderungszeiten älter alsdatetimesind.
-
- verify
-
Liest die Commit-Graph-Datei und überprüft deren Inhalt gegen die Objektdatenbank. Wird zur Überprüfung auf beschädigte Daten verwendet.
Mit der Option
--shallowwird nur die Tip-Commit-Graph-Datei in einer Kette von aufgeteilten Commit-Graphen überprüft.
BEISPIELE
-
Schreibt eine Commit-Graph-Datei für die gepackten Commits in Ihrem lokalen
.git-Verzeichnis.$ git commit-graph write
-
Schreibt eine Commit-Graph-Datei, die die aktuelle Commit-Graph-Datei erweitert, indem Commits in <pack-index> verwendet werden.
$ echo <pack-index> | git commit-graph write --stdin-packs
-
Schreibt eine Commit-Graph-Datei, die alle erreichbaren Commits enthält.
$ git show-ref -s | git commit-graph write --stdin-commits
-
Schreibt eine Commit-Graph-Datei, die alle Commits in der aktuellen Commit-Graph-Datei zusammen mit denen enthält, die von
HEADerreichbar sind.$ git rev-parse HEAD | git commit-graph write --stdin-commits --append
KONFIGURATION
Alles unterhalb dieser Zeile in diesem Abschnitt wird selektiv aus der git-config[1]-Dokumentation übernommen. Der Inhalt ist derselbe wie dort zu finden.
- commitGraph.generationVersion
-
Gibt den Typ der Generierungsnummernversion an, die beim Schreiben oder Lesen der Commit-Graph-Datei verwendet werden soll. Wenn Version 1 angegeben wird, werden die korrigierten Commit-Daten nicht geschrieben oder gelesen. Standardmäßig 2.
- commitGraph.maxNewFilters
-
Gibt den Standardwert für die Option
--max-new-filtersvongitcommit-graphwritean (siehe git-commit-graph[1]). - commitGraph.changedPaths
-
Wenn true, berechnet und schreibt
gitcommit-graphwritestandardmäßig geänderte Pfad-Bloom-Filter, was der Angabe von--changed-pathsentspricht. Wenn false oder nicht gesetzt, werden geänderte Pfad-Bloom-Filter währendgitcommit-graphwritenur geschrieben, wenn die Filter bereits in der aktuellen Commit-Graph-Datei vorhanden sind. Dies entspricht dem Standardverhalten vongitcommit-graphwriteohne die Option--[no-]changed-paths. Zum Überschreiben einer Commit-Graph-Datei ohne Filter verwenden Sie die Option--no-changed-paths. Die Kommandozeilenoption--[no-]changed-pathshat immer Vorrang vor dieser Konfiguration. Standardmäßig nicht gesetzt. - commitGraph.readChangedPaths
-
Veraltet. Entspricht commitGraph.changedPathsVersion=-1, wenn true, und commitGraph.changedPathsVersion=0, wenn false. (Wenn commitGraph.changedPathVersion ebenfalls gesetzt ist, hat commitGraph.changedPathsVersion Vorrang.)
- commitGraph.changedPathsVersion
-
Gibt die Version der geänderten Pfad-Bloom-Filter an, die Git lesen und schreiben wird. Kann -1, 0, 1 oder 2 sein. Beachten Sie, dass Werte größer als 1 mit älteren Git-Versionen, die diese Versionen noch nicht verstehen, möglicherweise nicht kompatibel sind. Seien Sie vorsichtig, wenn Sie in einer Umgebung mit gemischten Versionen arbeiten.
Standardmäßig -1.
Wenn -1, verwendet Git die Version der geänderten Pfad-Bloom-Filter im Repository und standardmäßig 1, wenn keine vorhanden sind.
Wenn 0, liest Git keine Bloom-Filter und schreibt Version 1 Bloom-Filter, wenn zum Schreiben aufgefordert wird.
Wenn 1, liest Git nur Version 1 Bloom-Filter und schreibt Version 1 Bloom-Filter.
Wenn 2, liest Git nur Version 2 Bloom-Filter und schreibt Version 2 Bloom-Filter.
Weitere Informationen finden Sie unter git-commit-graph[1].
DATEIFORM
Siehe gitformat-commit-graph[5].
GIT
Teil der git[1] Suite