


Dieser Artikel setzt unsere "Advanced Git" -Serie fort. Folgen Sie Tower auf Twitter oder abonnieren Sie ihren Newsletter, um Updates zu zukünftigen Artikeln zu erhalten.
Zusammenführungskonflikte: Eine häufige Frustration für Git -Benutzer, insbesondere für diejenigen, die zusammenarbeiten. Sie sind jedoch oft weniger entmutigend als sie scheinen. Diese Rate erklärt ihre Ursachen, Natur und Lösung.
Erweiterte Git -Serie:
- Teil 1: Beherrschen des Git Commit
- Teil 2: Effektive Git -Verzweigungsstrategien
- Teil 3: Straffung der Zusammenarbeit mit Pull -Anfragen
- Teil 4: Angepackung von Zusammenführungskonflikten ( Sie sind hier! )
- Teil 5: Rebase vs. Merge: Eine vergleichende Analyse
- Teil 6: Die Kraft der interaktiven Wiederherstellung
- Teil 7: Cherry-Picking Commits: Ein selektiver Ansatz
- Teil 8: Erholung verlorener Commits mit dem Reflog
Verständnis von Zusammenführungskonflikten: Ursachen und Vorkommen
Zusammenführungskonflikte entstehen bei der Integration von Änderungen aus verschiedenen Quellen in Ihren aktuellen Zweig. Dies ist nicht nur auf das Zusammenführen von Zweigen beschränkt. Wiedergeburt, Kirschpicking, git pull
oder sogar Neuantrieb können alle Konflikte auslösen. Obwohl nicht jede Integration zu einem Konflikt führt, treten Konflikte auf, wenn widersprüchliche Veränderungen vorhanden sind.
Gits verschmelzende Fähigkeiten sind eine wichtige Stärke. Es behandelt automatisch die meisten Integrationen. Wenn sich jedoch in zwei Commits oder einer Datei, die in einer Niederlassung geändert und in einem anderen gelöscht wurde, in Konflikt geändert wird - zum Beispiel dieselbe Codezeile - erfordert das Git menschliche Intervention, um die Mehrdeutigkeit zu lösen.
Erkennen von Zusammenführungskonflikten
Git signalisiert eindeutig zusammengeführte Konflikte. Eine fehlgeschlagene Zusammenführung oder eine Rebase wird sofort im Terminal gemeldet:
<code>$ git merge develop CONFLICT (content): Merge conflict in index.html Automatic merge failed; fix conflicts and then commit the result.</code>
Selbst wenn Sie diese Nachricht verpassen, wird git status
den Konflikt hervorheben. Git -GUIs wie Tower bieten visuelle Hinweise, um sicherzustellen, dass Sie keine Konflikte übersehen. Seien Sie versichert, Git macht es schwierig, einen Zusammenführungskonflikt zu verpassen.
Einen Zusammenführungskonflikt rückgängig machen
Es ist keine Option, einen Zusammenführungskonflikt zu ignorieren. Es muss angesprochen werden. Sie haben zwei Auswahlmöglichkeiten: Lösen Sie den Konflikt oder schließen Sie die Handlung, die ihn verursacht hat, auf.
Das Rückgängigmachen ist häufig mit dem Parameter --abort
(z. B. git merge --abort
, git rebase --abort
) unkompliziert. Dies kehrt die Zusammenführung/Rebase um und restauriert den Staat vor dem Konflikt. Dies funktioniert auch, wenn Sie mit der Lösung von Dateien begonnen haben. Sie können immer abbrechen und neu starten.
Die Anatomie eines Zusammenführungskonflikts
Lassen Sie uns eine konfliktreiche index.html
-Datei untersuchen:
Git markiert widersprüchliche Abschnitte mit ? Der Inhalt nach diesem Marker stammt aus Ihrem aktuellen Zweig (Kopf). <code>=======
trennt die widersprüchlichen Änderungen, gefolgt von den Änderungen aus dem anderen Zweig (z. B. develop
), gekennzeichnet durch .
Ihre Aufgabe ist es, die Datei zu bearbeiten, einen Texteditor, eine IDE, GIT -GUI oder einen Zusammenführungs -Tool zu verwenden, um den Konflikt zu lösen.
Lösung von Zusammenführungskonflikten
Die Auflösungsmethode - Text -Editor, IDE, GUI oder Merge Tool - spielt keine Rolle; Die endgültige Datei muss Ihren gewünschten Status widerspiegeln. Einfache Konflikte können dazu beitragen, eine Veränderung zu verwerfen. Komplexere Konflikte erfordern möglicherweise eine Zusammenarbeit, um zu entscheiden, welche Veränderung sie behalten oder wie sie kombiniert werden sollen.
Während eine manuelle Bearbeitung möglich ist, rationalisieren dedizierte Tools den Vorgang häufig. Die GIT -GIT -GUIS bietet Hilfsmittel für visuelle Konfliktlösungen. Zusammenführungswerkzeuge bieten erweiterte Diff-Anzeige- und Vergleichsfunktionen (nebeneinander, kombinierte Ansichten usw.). Konfigurieren Sie Ihr bevorzugtes Tool mit git config
und rufen Sie es mit git mergetool
auf.
Nach der Lösung des Konflikts und der Inszenierung der Änderungen ( git add<filename></filename>
), begehen Sie die Änderungen wie gewohnt.
Nicht in Panik!
Zusammenführungskonflikte sind überschaubar. Das Verständnis der Ursache ermöglicht es Ihnen, den Konflikt entweder rückgängig zu machen oder zu lösen. Auch Fehler sind reversibel; Wechseln Sie einfach zum Vorkonfliktbeauftragungen zurück und beginnen Sie von vorne.
Erkunden Sie das kostenlose "Advanced Git -Kit" mit Videos zu Verzweigungen, interaktiven Rebase, Reflog, Submodulen und vielem mehr.
Erweiterte Git -Serie:
- Teil 1: Beherrschen des Git Commit
- Teil 2: Effektive Git -Verzweigungsstrategien
- Teil 3: Straffung der Zusammenarbeit mit Pull -Anfragen
- Teil 4: Angepackung von Zusammenführungskonflikten ( Sie sind hier! )
- Teil 5: Rebase vs. Merge: Eine vergleichende Analyse
- Teil 6: Die Kraft der interaktiven Wiederherstellung
- Teil 7: Cherry-Picking Commits: Ein selektiver Ansatz
- Teil 8: Erholung verlorener Commits mit dem Reflog
Das obige ist der detaillierte Inhalt vonZusammenführen Konflikte: Was sie sind und wie sie mit ihnen umgehen sollen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Für eine Weile war iTunes der große Hund im Podcasting. Wenn Sie also "Abonnieren Sie Podcast" verlinkt haben, um zu mögen:

Wir haben die Oper verloren, als sie 2013 Chrome gingen. Gleiches Geschäft mit Edge, als es Anfang dieses Jahres auch Chrome ging. Mike Taylor nannte diese Veränderungen a "abnehmend

Von trashigen Clickbait -Websites bis hin zu den meisten August der Veröffentlichungen sind die Teilen von Schaltflächen seit langem im gesamten Web allgegenwärtig. Und doch ist es wohl diese diese

In der Roundup der Woche geht Apple in Webkomponenten, wie Instagram Insta-Loading-Skripte und einige Lebensmittel für das Denken für selbsthosting kritische Ressourcen sind.

Als ich die Dokumentation von Git -Befehlen durchschaut hatte, bemerkte ich, dass viele von ihnen eine Option hatten. Ich dachte anfangs, dass dies nur ein war

Klingt ein bisschen wie ein schweres Problem. Ist es nicht? Wir haben oft keine Produktaufnahmen in Tausenden von Farben, sodass wir das mit dem mit umdrehen können. Wir auch nicht

Ich mag es, wenn Websites eine dunkle Modusoption haben. Der dunkle Modus erleichtert mir das Lesen von Webseiten und hilft meinen Augen, sich entspannter zu fühlen. Viele Websites, einschließlich

Ich schaue mir das HTML -Element zum ersten Mal an. Ich habe es für eine Weile dessen bewusst, aber Haven ' Es wurde es noch nicht für einen Dreh genommen. Es hat einige ziemlich cool und


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

WebStorm-Mac-Version
Nützliche JavaScript-Entwicklungstools

EditPlus chinesische Crack-Version
Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

Dreamweaver Mac
Visuelle Webentwicklungstools

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

SAP NetWeaver Server-Adapter für Eclipse
Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.