2016-04-14 17 views
0

Zweig B wurde von Zweig A erstellt; In Zweig B File.cs wurde in FileName.cs umbenannt, zusätzliche Änderungen festgeschrieben und auf diese Datei angewendet. In Zweig A Änderungen wurden an File.cs in Zweig A übergeben.Git Zusammenführungskonflikt mit umbenannter oder gelöschter Datei

Pull-Anforderung auf Zweig B zu Zweig A hat Zusammenführungskonflikte. Wie löst man diesen Konflikt?

+0

Zusammenführen und Festschreiben von Zweig B in Zweig A; Nach diesem Pull-Request wurde automatisch gelöst. – sbprasadrao

+0

"Erstellt von" ist nicht wirklich relevant (seit Zweig Etiketten bewegen). Was bei einer Zusammenführung wichtig ist, ist die * merge base *, die aus dem commit-Diagramm bestimmt wird, und die Diffs zwischen (1) der Basis und Ihrem aktuellen Commit und (2) der Basis und Ihrem Zusammenführungsziel-Commit. Sie können diese Diffs mit 'git diff' sehen. Wenn die Pull-Anforderung einer Person nicht sauber zusammengeführt wird, bedeutet dies, dass sie (der Request-Er) ihren Code neu erstellen müssen, damit Sie eine andere Zusammenführungsbasis haben. – torek

Antwort

0

Es ist fast unmöglich, dies zu beantworten, weil es etwas geben könnte, das den Konflikt von einem Leerraum zur Umbenennung der Datei selbst verursacht.

Aber nur neugierig, wenn Sie git sagen sollten, welche man wählen sollte, welche würde man erwarten, ausgewählt zu werden? Möchten Sie, dass Ihre Änderungen in Zweig A Datei.cs + Ihre Änderungen in Dateiname.cs (von B) sind? Oder möchten Sie, dass Branch A FileName.Cs + beide Änderungen in den Dateien von jedem Zweig sein? Siehst du den Konflikt?

Ich würde vorschlagen, dass Sie beide in einem Texteditor/Code-Vergleichstool öffnen und manuell zusammenführen, was Sie zusammenführen müssen.

Wenn das Umbenennen von Dateien wie diesem ein häufiges Problem für Sie ist, sollten Sie A) mit Ihrem Team kommunizieren, um zu verstehen, warum Dateien ständig umbenannt werden oder B) Schreiben Sie ein Skript, um diese Dinge zu behandeln. Weitere Informationen finden Sie in diesem Artikel: https://git-scm.com/book/en/v2/Git-Tools-Advanced-Merging

Verwandte Themen