2010-06-21 7 views
15

Ich begann mit einer einfachen Aufgabe in der Hauptzweig. Sie kennen die Art von Aufgabe, wo "das zu einfach ist, um sich mit einem Git-Zweig zu beschäftigen" ... das unausweichliche Ergebnis war, dass ich jetzt eine Menge unvollendeter Arbeit in der Meisterbranche habe und an anderen Dingen arbeiten muss. Wie verschiebe ich meine aktuelle Arbeit in eine neue Niederlassung?Wie verschiebe ich meine aktuelle Arbeit in einen Zweig?

Antwort

21

Sie können Verzweigungen mit einem schmutzigen Baum wechseln, solange der Schalter keine Änderung von schmutzigen Dateien erfordert. Da Sie einen neuen Zweig sind die Schaffung es nicht garantiert wird:

git checkout -b new-branch 

Sobald Sie, dass Sie begehen und wechseln getan haben wieder zu meistern. Sie können auch zuerst begehen, auch wenn es etwas mehr Arbeit ist, weil Sie Master rückgängig zu machen müssen, bevor der Commit:

git commit 
git branch new-branch 
git reset --hard HEAD^ 
+0

+1 Ich habe mich gefragt, ob Sie tun könnten Das! –

+0

Ich habe immer angenommen, du könntest das nicht machen :) glücklich, dass du falsch liegst :) –

11

Sie könnten git stash es!

git stash 

Änderung Niederlassung:

git checkout -b new-branch 

es Pop, wenn Sie fertig sind:

git stash pop 

Es sei denn, Sie verpflichtet sie bereits. Hast du?

+0

nicht, sie nicht begangen hatte –

+0

Dann ist es einfach. Verwenden Sie einfach Git stash und Sie erhalten ein sauberes Arbeitsverzeichnis. Mach deine Änderungen, beginne etc., wenn du fertig bist, git stash pop. Wenn es keine Konflikte gibt, war es das. Ansonsten können Sie der Dokumentation im Link "git stash" folgen. Ich habe den Zweig Teil Ihrer Bearbeitung jedoch nicht verstanden. –

+0

Ziel war es, die schmutzigen Teile des Master-Zweiges zu den schmutzigen Teilen des neuen Zweiges zu machen und den Master clean zu lassen. –

Verwandte Themen