recherche

Maison  >  Questions et réponses  >  le corps du texte

Une fois que git a fusionné une branche avec master et l'a soumise à github, comment puis-je également retirer la fusion dans github ?

Tout comme le titre, j'ai fusionné le code inachevé de la branche vers master, et git l'a poussé vers github. Ensuite, j'ai continué à améliorer le code sur dev, puis quand j'ai voulu retirer la fusion, j'ai trouvé qu'après. en retirant la fusion locale, cela ne pouvait pas être le cas. Quand je l'ai poussé vers github, cela a montré qu'il y avait un conflit, je ne sais pas pourquoi.

淡淡烟草味淡淡烟草味2806 Il y a quelques jours858

répondre à tous(1)je répondrai

  • 巴扎黑

    巴扎黑2017-05-02 09:49:43

    Si vous fusionnez localement, vous pouvez visualiser vos opérations historiques via git reflog, puis utiliser git reset --hard HEAD@{n} pour revenir à l'étape n dans le reflog

    Ensuite, git push origin master -f vous pouvez ramener le maître distant à son état précédent


    En fait, puisque vous fusionnez, un commit de fusion sera généré. Vous pouvez également commencer localement git checkout master A cette époque, votre master local devrait également être le plus récent. Commencez par git log regardez l'historique, puis git reset --hard xxxxxx revenez en arrière en fonction du hachage de validation.

    Ensuite, de la même manière, git push origin master -f peut mettre à jour le maître distant


    Les deux méthodes sont les mêmes, car vous avez supprimé un commit et le commit existe à distance. À l'heure actuelle, les informations historiques de deux cents ans sont incohérentes, vous ne pouvez donc pas directement git push origin master
    à moins d'ajouter un. nouveau commit après ce commit, modifiez manuellement le code et revenez à l'état avant la fusion de cette façon, vous n'avez pas besoin de -f et pouvez directement git push origin master mettre à jour

    .

    répondre
    0
  • Annulerrépondre