1

Ich habe ein Projekt, das Git verwendet. Als ich das Repo erhalten habe, hatte es einige Änderungen ohne Commit. Ich habe diese begangen und angefangen, meine eigenen zu machen.Wie füge ich zusammen, wenn ein Commit die Änderungen von einem anderen Commit enthält?

Ich habe Arbeit von einem anderen Entwickler erhalten, und dieser Entwickler hat beide ihre Änderungen und die ursprünglichen nicht festgeschriebenen Änderungen in einem einzigen Commit festgeschrieben.

Jetzt habe ich zwei Git Repos in separaten Ordnern und ich würde gerne wissen, wie ich meine Änderungen in die Entwickler Änderungen mit so wenig Konflikten wie möglich zusammenführen kann.

Antwort

3

Angenommen, Sie haben Ihr Tipp zur Zeit geprüft, und es ist master, wäre eine Option sein:

1. Add a remote aus Ihrem Repository zu ihnen zeigen.

2. in seinen Änderungen Fetch erstellen
git fetch hisRemote

2. Dann eine Niederlassung nur mit den vorgenommenen Änderungen ist, dass abgezweigt, wo Sie die ursprünglichen Änderungen verpflichtet.
git branch myChanges

3. Reset der master Zweig zurück zu dem verpflichten, wo verpflichtet, Sie die ursprünglichen
geändert git checkout master
git reset --hard <commitOriginalChangesAreIn>

4. Dann seinen Zweig mit seinen Änderungen und den ursprünglichen Änderungen in diesen Zweig zusammenführen.
git merge hisRemoteBranch

5. Schließlich den Zweig Tipp in den Zweig mit Ihren Änderungen zusammenführen.
git merge myChanges

+0

Eine Frage ist, wenn ich 'git fetch hisRemote' laufen lasse, wird mein Master-Zweig mit den anderen Devs-Änderungen überschrieben. Soll das passieren? (Meine Arbeit befindet sich in einem separaten Zweig.) Wenn ich zu Schritt 3 komme, mache ich im Wesentlichen alle Änderungen rückgängig, die ich importiere. –

+1

Der Abruf sollte keine lokalen Zweige überschreiben. Bist du sicher, dass es ist? – Andy

Verwandte Themen