Was Sie hatten, war nicht Problem , sondern Konflikte . Dies geschieht, wenn die Dateien von zwei verschiedenen Personen an derselben Stelle geändert werden (Sie fügen beide Objekte in denselben Zeilen ein / entfernen / modifizieren).
Sie können Ihre Dateien einfach manuell aktualisieren, indem Sie sich entscheiden, alles zwischen <<<<<<< HEAD
und =======
oder zwischen =======
und >>>>>>>
oder einer Mischung aus beidem zu behalten. Sobald Sie alle Konflikte gelöst haben, müssen Sie nur Ihre Änderungen bestätigen.
Um lokale Änderungen in einer Datei zu verwerfen, können Sie
ausführen %Vor%oder für alle Dateien mit
%Vor%Sie können auch für jede Datei entscheiden, ob Sie Ihre Version oder die Repository-Version mit
behalten möchten %Vor%Dein Q wird am besten schon von alestanis beantwortet. Immer noch zum einfachen Nachschlagen:
Eine Erläuterung dieser Konfliktmarker >>>>>
... <<<<<
finden Sie unter diese Frage .
Es gibt weitere Informationen zum Zusammenführen bei diesem Q .
Und git help merge
ist auch ganz explizit hilfreich:
KONFLIKTE LÖSEN
Nachdem Sie einen Konflikt gesehen haben, können Sie zwei Dinge tun:
· Entscheide nicht zusammenführen. Die einzigen Bereinigungen, die Sie benötigen, sind das Zurücksetzen der Indexdatei auf der HEAD verpflichtet sich, 2. umzukehren und die Arbeit aufzuräumen Baumänderungen von 2. und 3. gemacht;
git merge --abort
kann dafür verwendet werden.· Beheben Sie die Konflikte. Git markiert die Konflikte in der Arbeitsbaum. Bearbeiten Sie die Dateien in Form und
git add
sie an die Index. Benutzengit commit
, um den Deal zu besiegeln.Sie können den Konflikt mit einer Reihe von Werkzeugen abarbeiten:
· Verwenden Sie ein Mergtool.
git mergetool
zum Starten eines grafischen Mergetools, das wird Sie durch die Zusammenführung arbeiten.· Schau dir die Diffs an. %Code% zeigt ein Drei-Wege-Diff an und markiert Änderungen von beiden HEAD und MERGE_HEAD-Versionen.
· Sehen Sie sich die Diffs von jedem Zweig an.
git diff
zeigt zuerst Diffs für die HEAD-Version an und dann der MERGE_HEAD Version.· Sehen Sie sich die Originale an.
git log --merge -p <path>
zeigt den gemeinsamen Vorfahren,git show :1:filename
zeigt die HEAD Version undgit show :2:filename
zeigt die MERGE_HEAD Version.
Die Verwendung von SourceTree für git zur Verwaltung meiner Builds mit installiertem Kdiff hat mir geholfen, 99% dieser Probleme wirklich effizient zu lösen.
Ich bin nur übrig mit dem Versuch, diese aus meiner SOU-Datei in. Net zu entfernen, normalerweise ersetzt die SOU-Datei mit einer älteren Version dies.
Tags und Links git git-merge merge-conflict-resolution