Ich fand, dass die Shelve / Unshelve-Befehle in TFS sehr praktisch und sehr einfach zu verwenden sind. Was ist das Äquivalent in Git?
Hier ist das Szenario in TFS:
- Ich habe Änderungen im Kofferraum vorgenommen
- Ich stelle ein: Der Änderungssatz wird auf dem Server gespeichert (mit einem Etikett) und ich erhalte die Quelle vor den Änderungen zurück
- Ich arbeite im Kofferraum
- Jemand kann sich abmelden: Die Änderung in seinem Arbeitsbereich festlegen
Ich weiß, dass es einen Befehlsaufruf gibt, aber ich bin mir nicht sicher, wie der Workflow funktioniert und ob er den Anforderungen entspricht.
Was Sie tun möchten, wird mit einer einfachen alten Verzweigung in Git erreicht.
Aus einer schönen StackOverflow-Antwort von JaredPar :
Dies ist analog zum Festschreiben an einen Zweig und zum Übertragen auf einen Server in Git.
Wie es geht:
Angenommen, Sie arbeiten am Zweig "Master" und entscheiden sich für die Implementierung von Feature X. Sie haben einen guten Start, aber dann sagt Ihnen Ihr Chef, dass Feature Y so schnell wie möglich implementiert werden muss. Phil im nächsten Würfel über Freiwillige, um Feature X zu beenden, während Sie Feature Y ausführen. Folgendes tun Sie:
Erstellen Sie einen neuen Zweig und wechseln Sie zu diesem:
Übernehmen Sie Ihre Änderungen:
Schieben Sie es auf einen Server, den Phil sehen kann:
Gehen Sie zurück zum Hauptzweig (der sich nicht geändert hat):
Möglicherweise möchten Sie auch proaktiv einen neuen Zweig für Feature Y erstellen:
Phil kann jetzt Ihre Feature-X-Arbeit herunterziehen und dort weitermachen, wo Sie aufgehört haben:
quelle
Git Stash ist ein bisschen ähnlich, außer dass es auf Ihren Arbeitsbaum beschränkt ist.
In einem DVCS müssen Sie Folgendes tun, um einen solchen Workflow zu erzielen:
Eine andere Möglichkeit wäre, den anderen Entwickler Ihren Zweig abrufen zu lassen (wo Sie diese speziellen Änderungen vorgenommen haben) und ihn auszuwählen , was jedoch nicht empfohlen wird, da von Kirschen ausgewählte Commits schwer zu verfolgen sind .
quelle