annulation de la fusion git après l'avertissement merge.renameLimit plus les conflits
Je suis en train de faire une fusion de squash à partir d'une branche devel dans le maître.
stefanos-imac:trunk borini$ git merge --squash devel
CONFLICT (content): Merge conflict in test1
warning: inexact rename detection was skipped due to too many files.
warning: you may want to set your merge.renamelimit variable to at least 2224 and retry the command.
Squash commit -- not updating HEAD
Automatic merge failed; fix conflicts and then commit the result.
assez juste.
stefanos-imac:trunk borini$ git config merge.renameLimit 999999
Alors j'essaie d'annuler la fusion et de la refaire avec la limite supérieure
stefanos-imac:trunk borini$ git merge --abort
fatal: There is no merge to abort (MERGE_HEAD missing).
Ok, alors peut-être que j'ai à faire, comme il le dit et juste reinvoke de la commande merge
stefanos-imac:trunk borini$ git merge --squash devel
fatal: 'merge' is not possible because you have unmerged files.
Please, fix them up in the work tree, and then use 'git add/rm <file>' as
appropriate to mark resolution and make a commit, or use 'git commit -a'.
oh git, pourquoi êtes-vous un tel git?
Plus au point, personne ne sait comment sortir de cette situation ?
source d'informationauteur Stefano Borini
Vous devez vous connecter pour publier un commentaire.
Em,
git reset --hard origin/master
?La façon moderne pour annuler une opération de fusion est (mais cela ne fonctionne que lorsque MERGE_HEAD est présent):
Et les un peu plus âgés, qui sera le travail dans ce cas (MERGE_HEAD est manquant):
Old school, décrit dans la accepté de répondre (avertissement: ne jetez tous vos changements locaux):
Donc d'avis que
git merge --abort
est seulement équivalent àgit reset --merge
étant donné queMERGE_HEAD
est présent. Cela peut être lu dans le git de l'aide pour la commande de fusion.Après l'échec d'une fusion, quand il n'y a pas de
MERGE_HEAD
l'échec de la fusion peut être annulée avecgit reset --merge
mais pas nécessairement avecgit merge --abort
.git merge --abort
feront aussi l'affaire. Un peu plus rapide que la saisie de la pleine git reset de la commande.Abandonner travaille également avec
rebase
etcherry-pick
.