Wenn ich an Zweig A arbeite und plötzlich an Zweig B arbeiten muss, bevor ich mit einem Commit für Zweig A fertig bin, verstaue ich meine Änderungen an A, checke B, erledige meine Arbeit dort, checke dann A und lege den Stash an.Wann sollte ich den Git Stash verwenden?
Wenn ich an A arbeite und die Arbeit für den Tag einstellen möchte, sollte ich meine Arbeit speichern und sie am nächsten Tag anwenden, wenn ich meine Arbeit fortsetze oder die Dinge einfach so lassen sollte, wie sie sind - nicht festgeschrieben modifiziert Dateien im Arbeitsverzeichnis. Ich sehe nicht, warum ich in diesem Fall einen Stash verwenden müsste, außer wenn es einen Sicherheitsvorteil gibt.
Auch ein anderes Szenario - ich arbeite sowohl bei der Arbeit als auch zu Hause. Wenn ich nicht bereit bin mit einem Commit, wenn ich nach Hause gehen will, kann ich meine Arbeit verschenken, sie zu GitHub schieben und dann diesen Stash zu Hause ziehen?
Nein, 'git stash' wird Ihren Zweig nicht ändern. Es wird insbesondere keine festgeschriebenen Änderungen rückgängig machen. Es wird nur nicht festgeschriebene Änderungen an Ihren Dateien (vorübergehend) verwerfen. - Es mag wählerisch erscheinen, aber diese Art von Wörtern haben im Zusammenhang mit Git eine ganz besondere Bedeutung. Du solltest das wirklich nicht vermischen. – michas
Vielen Dank, dass Sie darauf hingewiesen haben. Ich habe meine Antwort entsprechend geändert. – Severin
In git ist eine "Verzweigung" als eine Reihe von Commits definiert. 'git stash' wird keine Commits berühren und daher auch keinen Zweig verändern. Es wird nichts von einem Zweig "entfernen" und es wird es in keiner Weise "zurücksetzen". Der Zweig bleibt unverändert, nur die Dateien im Arbeitsbaum ändern sich. - Das sind zwei völlig verschiedene Dinge. – michas