Wie bereits erwähnt, möchten Sie, wenn Sie einen "Zweig pro Zweig" möchten, wirklich einen neuen Zweig, der sich vom vorhandenen Zweig löst.
Neben der bereits erwähnten Tatsache, dass Sie mit dem Stash in einen Zweig ziehen können, an dem Sie gerade arbeiten, können Sie auch den Zweig wechseln, bevor Sie alles festgeschrieben haben. Dies ist nicht zum Kirschpflücken im üblichen Sinne nützlich, sondern zum Kirschenpflücken Ihrer Arbeitskopie .
Wenn ich beispielsweise an einem Feature-Zweig arbeite, stelle ich häufig kleinere Fehler oder kosmetische Verunreinigungen im Code fest, die für diesen Zweig nicht relevant sind. Nun, ich repariere diese einfach sofort. Wenn die Zeit zum Festschreiben gekommen ist, lege ich selektiv die relevanten Änderungen fest, nicht jedoch die Korrekturen und Kosmetika. Stattdessen verwahre ich diese, wodurch ich zu meinem Zweig "Minor-Fixes-on-Stable" wechseln kann, wo ich den Stash anwenden und jeden Minor-Fix separat festschreiben kann. ( In Abhängigkeit von den Änderungen in Frage, ich werde auch noch einmal einige von ihnen beiseite schaffen, zu einem anderen Feature Zweig zu wechseln, wo ich mich bewerben diejenigen .)
Auf diese Weise kann ich während der Arbeit tief in den Programmiermodus wechseln und mich nicht um das ordnungsgemäße Bibliothekswesen meines Codes kümmern. Wenn ich dann eine mentale Pause mache, kann ich zurückgehen und meine Änderungen sorgfältig in die richtigen Regale sortieren.
Wenn der Stash nicht global wäre, wäre diese Art von Workflow weitaus schwieriger durchzuführen.
git stash-here
jemand?