web-dev-qa-db-fra.com

Appliquer une réserve à différentes branches

Je travaillais accidentellement sur la mauvaise branche. Maintenant, je veux transférer toutes mes modifications dans la bonne branche. 

Si je cache les modifications et les applique sur la bonne branche, les modifications non validées ne seront-elles ajoutées qu'à la bonne branche ou chaque modification/validation de la mauvaise branche qui n'existe pas sur la bonne branche? 

Par exemple  

La mauvaise branche a:

  • Commettre un 

  • Modifications non validées b

Bonne branche a

  • Commit c

Si je fais git stash sur la mauvaise branche et que git applique stash dans la bonne branche, la validation sera-t-elle transférée vers la bonne branche? 

9
MeesterPatat

Je voudrais faire une cachette, puis réinitialiser (mélangé de sorte que vous ne perdiez pas les modifications) le commit, cacher cela, puis changez pour la branche correcte et saute les deux cachettes.

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

Si votre branche n'existe pas encore:

  • branche git stash "new_branch"

si c'est le cas:

  • branche stit git "temp_new_branch"
  • git ajoute "tes modifications"
  • git commit
  • git Checkout "votre branche désirée d'appliquer stash"
  • fusion de git "temp_new_branch"
  • git Push
  • branche git -d "temp_new_branch"
4
miguelfg

Solution de contournement

  1. Faites un commit avec les changements souhaités.
  2. Passez à la succursale où vous souhaitez que ces modifications soient appliquées.
  3. De cette branche git cherry-pick 23h123kjb (<- remplacez ce hachage par celui trouvé dans un git log spécifique au commit que vous souhaitez importer)
  4. Profit!
2
dYale

Non ça ne va pas. Les commits ne sont pas mis dans la réserve . Parfois, je change simplement de branche avec mes modifications non validées et non stockées et cela fonctionne également (je ne sais pas si dans tous les cas).

2
Bugfinger

Ce que vous pouvez aussi faire:

  • Créez un patch sur la "mauvaise" branche.
  • Jeter les modifications 
  • Passer à la bonne branche
  • Appliquer le correctif sur cette branche
0
Serve Laurijssen