2016-11-03 4 views
0

Ich habe eine Hauptzweig, genannt "Hund", ich begehe dort jeden Tag. Heute hat mein Chef gesagt, dass ich einen Fehler gemacht habe, ich musste vor einer Woche einen anderen Zweig "Katze" gründen und alle meine Commits dort während der Woche setzen.Wie mache ich eine Verzweigung und stelle die Hauptzweigstelle wieder her?

Nun, jetzt ist es zu spät.

Ist es jetzt möglich, einen Zweig wie vor einer Woche zu erstellen und alle Commits dorthin zu verschieben, so dass der aktuelle "Hund" so aussieht, als ob ihn niemand die ganze Woche verpflichtet hätte?

+0

Haben Sie die Commits bereits auf die Fernbedienung übertragen? – ckruczek

+0

Ja tat ich, ich schob sie alle ... – shal

+1

Ok dann gehen Sie mit der Antwort von @ Travo, aber seien Sie sich bewusst, wenn Sie Kraft drücken, werden Sie auch die gesamte Remote-Geschichte zerstören und andere Entwickler werden davon beeinflusst. – ckruczek

Antwort

1

Hier ist mein theoretisches Vorgehen:

Schritt 1: umbenennen Stromzweig dog-cat.

git branch -m <oldname> <newname>

, die in dreht

git branch -m dog cat

Schritt 2: Erstellen Sie einen neuen Zweig dog aus dem letzten Commit Sie dort sein wollen.

Dafür ist die letzte commit wollen Sie die dog Zweig folgendes haben und zu tun:

git branch dog <sha1-of-commit>

ODER

git checkout -b dog <sha1-of-commit>

Wenn Sie bereits nach Herkunft geschoben haben, Sie könnten --force einige Dinge haben.

Verwandte Themen