Nehmen wir an, ich merge
git und es gibt einen Zusammenführungskonflikt.
Meine Frage ist: Wie kann ich git zwingen, immer die neuere Version des Codes in Konflikt zu wählen, damit ich den Konflikt nicht von Hand lösen muss?
Nehmen wir an, ich merge
git und es gibt einen Zusammenführungskonflikt.
Meine Frage ist: Wie kann ich git zwingen, immer die neuere Version des Codes in Konflikt zu wählen, damit ich den Konflikt nicht von Hand lösen muss?
Antworten:
Es ist nicht gerade die "neuere" Version, aber Sie können git anweisen, immer die Version auf dem aktuellen Zweig git merge branch -X ours
zu bevorzugen oder die Version des Zweigs zu bevorzugen, der zusammengeführt wird git merge branch -X theirs
.
Von man git-merge
:
unsere:
Diese Option erzwingt, dass widersprüchliche Hunks automatisch automatisch aufgelöst werden, indem unsere Version bevorzugt wird. Änderungen gegenüber dem anderen Baum, die nicht mit unserer Seite in Konflikt stehen, werden im Zusammenführungsergebnis berücksichtigt. Bei einer Binärdatei wird der gesamte Inhalt von unserer Seite übernommen.
ihre:
Dies ist das Gegenteil von "unserem".
ours
- theirs
!! Sagen Sie es einfach und Sie verstehen, was der Befehl tut! Ich liebe Git! : D
git merge branch
, müssen git merge --abort
Sie dies tun , bevor Sie dies tun können.
error: The following untracked working tree files would be overwritten by merge:
Ich weiß nicht einmal, warum diese Dateien überhaupt in diesem Zweig sind, aber sie sollten überschrieben werden, und Git lehnt ab.
git add
sie zuerst entfernen (oder entfernen ). Lesen Sie ein bisschen darüber git clean
, es kann Ihnen dabei helfen.
git merge ours
wenn es einige Konfliktdateien sind, werden alle Protokoll sein? und könnte ich das verfolgen git merge ours
?
Ich benutze das,
git fetch --prune
git reset --hard origin/master