2012-10-22 5 views
12

Ich fügte meinem Git-Repository einen neuen Zweig für ein neues Feature hinzu, das ich hinzufügte, und vergaß es explizit auszuprobieren. Ich habe seitdem viele Dateien geändert, ohne zu committen, aber ich möchte in der Lage sein, diese Änderungen auf den alternativen Zweig zu übertragen, nicht auf den Master. Wie kann ich das sicher machen?Ich habe vergessen, Filiale zu überprüfen, bevor ich Änderungen vornahm

Antwort

14

Sie können einfach die neue Filiale auschecken - Ihre nicht festgeschriebenen Änderungen werden in die neue Filiale übernommen. (Dies ist nicht erlaubt, wenn Ihre lokalen Änderungen sich auf eine Datei auswirken würden, die durch Wechseln der Verzweigung geändert würde, aber in diesem Fall klingt es so, als ob sich die neue Verzweigung an derselben Position wie Ihre letzte Übertragung befindet Problem.)

11
git stash 

git checkout other_branch 

git stash pop 

Soll der Trick tun. Sie können dann wie gewohnt committen. Siehe auch: git stash manual page

+2

Es wird natürlich nicht schaden, aber 'git stash' ist in diesem Fall eigentlich unnötig. –

+2

Ich mag das zusätzliche Gefühl der Sicherheit, die dies bietet. Wenn Sie __way__ zu viele Änderungen seit dem letzten Commit vorgenommen haben und __really__ sie nicht verlieren wollen, selbst wenn Sie wissen, dass git checkout branch in Ordnung ist, ist es immer noch beruhigend, einen Notfallplan zu haben, falls die Dinge in den Süden gehen. – FireSBurnsmuP

Verwandte Themen