wake-up-neo.com

Übernehmen Sie den Vorrat auf einen anderen Zweig

Ich habe aus Versehen an einem falschen Zweig gearbeitet. Nun möchte ich alle meine Änderungen in den richtigen Zweig übertragen. 

Wenn ich die Änderungen verwende und auf den richtigen Zweig verwende, werden dann nur die nicht festgeschriebenen Änderungen zum richtigen Zweig hinzugefügt oder jede Änderung/Festschreibung des falschen Zweigs, die nicht im richtigen Zweig vorhanden ist? 

Zum Beispiel  

Falscher Zweig hat:

  • Commit a 

  • Nicht festgeschriebene Änderungen b

Richtiger Zweig hat

  • Commit c

Wenn ich den falschen Zweig mit git stash verwende und den richtigen Zweig mit git anwendet, wird dann ein Commit auf den richtigen Zweig übertragen? 

9
MeesterPatat

Ich würde ein Versteck machen, dann das a-Commit zurücksetzen (gemischt, damit Sie die Änderungen nicht verlieren), das verstecken, dann zum richtigen Zweig wechseln und beide Verstecke platzieren.

git stash save "b"
git reset HEAD~
git stash save "a"
git checkout correct-branch
git stash pop
git commit -m "a"
git stash pop
11
miguel_ibero

Wenn Ihre Niederlassung noch nicht existiert:

  • git-Stash-Zweig "new_branch"

wenn ja:

  • git Stash Zweig "temp_new_branch"
  • git füge "deine änderungen" hinzu
  • git begehen
  • git checkout "Ihr gewünschter Zweig, um Vorräte anzuwenden"
  • git merge "temp_new_branch"
  • git Push
  • git-Zweig -d "temp_new_branch"
4
miguelfg

Abhilfe

  1. Machen Sie ein Commit mit den gewünschten Änderungen.
  2. Gehen Sie zu dem Zweig, in dem diese Änderungen vorgenommen werden sollen.
  3. Von diesem Zweig git cherry-pick 23h123kjb (<- Ersetzen Sie diesen Hash durch den in einem git log angegebenen spezifischen Code für das Commit, das Sie einbringen möchten)
  4. Profitieren!
2
dYale

Nein, wird es nicht. Commits werden nicht in den Stash gestellt .. __ Ich wechsle auch manchmal einfach mit meinen Änderungen unbestückt und nicht verschoben und es funktioniert auch (nicht sicher, ob in jedem Fall jedoch).

2
Bugfinger

Was Sie auch tun können:

  • Erstellen Sie einen Patch im "falschen" Zweig.
  • Verwerfen Sie die Änderungen 
  • Wechseln Sie zum richtigen Zweig
  • Wenden Sie den Patch auf diesen Zweig an
0