2015-11-05 1 views
0

Ceci est ma situation. Je travaille sur la branche MiniMaxAB (ligne verte)Impossible de revenir après la fusion dans Git

enter image description here

J'ai accidentellement fusionné une branche (violet) dans le mien (vert) et poussais. Ce qui est stupide (j'ai juste commencé à apprendre git) et mauvais pour notre objectif. Maintenant, je voudrais revenir sur cela et annuler cette fusion. Par conséquent, je pris le hachage de la dernière commettras dans la branche verte avant la fusion (qui ne soit pas visible dans ce tableau parce que 15 jours vieux) et essayé de revenir:

git revert 86ed202152e719ae719654f7805bd2991f63fd29 

Malheureusement, il ne fonctionne pas ... Ce est ce que git dit:

enter image description here

donc j'ai essayé avec remise à zéro, ce qui fonctionne

git reset 86ed202152e719ae719654f7805bd2991f63fd29 

Mais wh en je pousse, je reçois cette erreur:

enter image description here

Comment puis-je résoudre ce problème?

+0

Je vous que vous avez des fichiers « unmereged » (il y a des fichiers de conflit, vous ne l'avez pas encore fusionné manuellement). changez votre statut 'git status'' pour nous –

+0

Voici le statut git après la réinitialisation: https://gyazo.com/f2f07895c0ddf68b6b3536e7d2ffd754 –

+0

Je pense que vous êtes censé dire le commit pour annuler, pas celui de revenir à. Pour 'reset' puis' push', il n'aime pas ça parce que vous avez changé l'historique. Vous pouvez le forcer à pousser avec 'git push -f' mais cela peut être une mauvaise idée si vos collaborateurs ont déjà retiré votre mise à jour. – Steve

Répondre

0

Vous devez suivre les étapes ci-dessous:

Étape 1: fusionner manuellement votre fichier de conflit minmax_ab_engine.e et ticktactoe.e (Ouvrez les fichiers et les modifier) ​​

Étape 2: Ajouter à l'étape par git add -A

Étape 3: Validez ces fichiers par git commit -m 'merge conflict files

Étape 4: Tirez la mise à jour de la télécommande par git pull origin MiniMaxAb

Étape 5: Poussez votre mise à jour à distance git push origin MiniMaxAb

Si vous souhaitez revenir, vous pouvez ignorer l'étape 4,5