2015-04-25 11 views
5

Ich habe eine sehr veraltete Master-Zweigstelle in Git Repo. all meine Arbeit wurde in einer anderen Branche gemacht. Was ist der beste Weg, die beiden zusammenzuführen? Ich interessiere mich nicht für irgendetwas in Meister, es ist weit veraltet. Danküberschreiben alles in Master mit einem anderen Zweig in Git

+0

Did 'git Kasse Master && git pull && git Merge ' nicht nehmen? – Makoto

Antwort

8

Wenn Sie mit dem Verlust der Geschichte Ihrer master-Zweig sind in Ordnung können Sie nur master Punkt auf den Kopf Ihrer aktuellen Zweig (Ihre „überschreiben“ nicht master - den Zweig - per se):

git checkout yourotherbranch 
git branch -D master 
git checkout -b master 

natürlich, wenn Sie eine Remote-Klon haben, werden Sie dann zu

git push -f origin master 

Nota bene haben: diese speziell gilt zu ersetzen ganz von Ihrem master Zweig und werfen die alte master weg, wie der Titel vermuten lässt. Andernfalls sollten Sie mit git merge master --strategy=ours in Ordnung sein.

+1

Danke für die Anerkennung der Alternative - ich würde mir vorstellen, dass eine Zusammenführung würde gut tun, aber wenn sie die gesamte Geschichte ersetzen wollten, dann ist das eine ganz andere Sache. – Makoto

3

Nehmen wir an, Ihre Arbeit in einer Filiale ist dev genannt:

git checkout dev 
git merge --strategy=ours master 
git checkout master 
git merge dev 

Die Einarbeitungsoption --strategy=oursgemeint ist, verwendet werden, um alte Entwicklungsgeschichte der Seitenzweige (quote) zu ersetzen.

1

Ein vollständiger Überschreibvorgang führt den anderen Inhalt nicht zusammen, sondern gibt ihn auf.

git checkout -B master anotherbranch 

Dies hat den Vorteil, über eine Lösch-and-recreate Ihre Niederlassung Einstellungen und reflogs behalten.

Wenn Sie administrative Anforderungen haben, um wertlose Commits in Ihrem Verlauf zu behalten, folgen Sie dem unter git merge -s ours [email protected]{1}. Ich bevorzuge diese Sequenz, weil es eine ungewöhnliche Zusammenführungsnachricht erzeugt, die das Scannen von --oneline Protokollen anzeigt, dass die Zusammenführung ungewöhnlich ist.

Verwandte Themen