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.35.1 → 2.52.0 keine Änderungen
-
2.35.0
2022-01-24
- 2.24.1 → 2.34.8 keine Änderungen
-
2.24.0
2019-11-04
- 2.1.4 → 2.23.4 keine Änderungen
-
2.0.5
2014-12-17
NAME
git-merge-index - Führt eine Zusammenführung für Dateien durch, die zusammengeführt werden müssen
BESCHREIBUNG
Dies sucht die <file>(s) im Index und, falls Merge-Einträge vorhanden sind, übergibt den SHA-1-Hash für diese Dateien als Argumente 1, 2, 3 (leeres Argument, falls keine Datei) und <file> als Argument 4. Dateimodus für die drei Dateien werden als Argumente 5, 6 und 7 übergeben.
OPTIONEN
- --
-
Interpretiere keine weiteren Argumente mehr als Optionen.
- -a
-
Führt eine Zusammenführung für alle Dateien im Index durch, die zusammengeführt werden müssen.
- -o
-
Anstatt bei der ersten fehlgeschlagenen Zusammenführung zu stoppen, führen Sie alle auf einmal durch – fahren Sie mit dem Zusammenführen fort, auch wenn frühere Zusammenführungen Fehler zurückgegeben haben, und geben Sie den Fehlercode erst nach allen Zusammenführungen zurück.
- -q
-
Beschweren Sie sich nicht über ein fehlgeschlagenes Merge-Programm (ein Fehler des Merge-Programms deutet normalerweise auf Konflikte während der Zusammenführung hin). Dies ist für Porcelains, die benutzerdefinierte Nachrichten ausgeben möchten.
Wenn git merge-index mit mehreren <file>s (oder -a) aufgerufen wird, verarbeitet es diese nacheinander und stoppt nur, wenn die Zusammenführung einen nicht-null Exit-Code zurückgibt.
Typischerweise wird dies mit einem Skript ausgeführt, das Git's Nachahmung des merge-Befehls aus dem RCS-Paket aufruft.
Ein Beispielskript namens git merge-one-file ist in der Distribution enthalten.
ALARM ALARM ALARM! Die Git "Merge Object Order" unterscheidet sich von der RCS merge Programm Merge Object Order. In der obigen Reihenfolge ist das Original zuerst. Aber die Argumentreihenfolge für das 3-Wege-Merge-Programm merge sieht das Original in der Mitte vor. Fragen Sie mich nicht warum.
Beispiele
torvalds@ppc970:~/merge-test> git merge-index cat MM This is MM from the original tree. # original This is modified MM in the branch A. # merge1 This is modified MM in the branch B. # merge2 This is modified MM in the branch B. # current contents
oder
torvalds@ppc970:~/merge-test> git merge-index cat AA MM cat: : No such file or directory This is added AA in the branch A. This is added AA in the branch B. This is added AA in the branch B. fatal: merge program failed
wobei das letztere Beispiel zeigt, wie git merge-index aufhört zu versuchen, zusammenzuführen, sobald etwas einen Fehler zurückgegeben hat (d. h. cat gab einen Fehler für die AA-Datei zurück, da sie im Original nicht vorhanden war, und somit git merge-index nicht einmal versuchte, das MM-Ding zusammenzuführen).
GIT
Teil der git[1] Suite