Wie kann ich formatiert Patch mit dem, was ich weg verstauen
Frage
In git, versteck ich meine Änderungen entfernt. Ist es möglich, dass ich einen Patch erstellen können mit dem, was ich bunkern? Und die Anwendung dieses Patch in einem anderen Repository (mein Mitarbeiter)?
Ich weiß ‚git format-patch -1‘, aber ich denke, das ist für das, was ich begangen habe. Aber ich bin auf der Suche für die gleiche Sache für Änderungen, die ich gebunkert?
Und wie kann ich einen Patch in anderen Repository anwenden?
Lösung
Sicher, git stash show
unterstützt diese:
git stash show -p
Andere Tipps
Diese Antwort liefert Informationen über sowohl den Patch zu sparen und ihre Anwendung, wo Sie wollen, es zu benutzen.
Um die Ausgabe in einer Datei bunkern:
git stash show -p --color=never > my-patch-name.patch
Überprüfen Sie Patch sieht gut aus:
git apply --stat my-patch-name.patch
Stellen Sie sicher, keine Fehler:
git apply --check my-patch-name.patch
Wenden Sie den Patch
git apply my-patch-name.patch
Mit
$> git stash list
stash@{0}: WIP on master: 84fx31c Merged with change to /public/
stash@{1}: WIP on master: 463yf85 FlupResource: also takes json as a query parameter
Sie eine Liste Ihrer kürzlich verstaute Sachen zu bekommen. Git tatsächlich schafft Objekte begehen, wenn Sie bunkern.
Sie sind verpflichtet wie alles andere. Sie können sie in einem Zweig Check-out:
$> git checkout -b with_stash stash@{0}
Sie können dann diesen Zweig veröffentlichen und Sie können Kollegen fusionieren oder herauspicken, die zu begehen.
Über Lösungen wird nicht funktionieren für binäre Daten. Die folgende Add-Unterstützung für sie:
git stash show stash@{0} -p --binary
Bearbeiten
Hinweis: Ich wollte nur einen Kommentar über Antworten hinzufügen, aber mein Ruf ist nicht ausreichend.
Ich glaube, das vor kurzem eine der udpates von Git sein könnte. Sie müssen die Änderungen nicht patchen Sie weg mehr gebunkert. Sie können Ihre gebunkert Änderungen an einem Zweig zum anderen nur anwenden.
sagen auf Zweig A haben Sie einige Änderungen gebunkert, als Versteck genannt @ {1}.
Sie wechseln jetzt zu Zweig B. Sie gerade tun:
$git stash apply stash@{1}
Dies gilt Ihre Niederlassung A ändert sich auf Zweig B.