recherche

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

Après que Git ait fusionné la mauvaise branche, elle a été soumise à l'entrepôt distant. Comment la restaurer ?

1. La branche de déploiement est la branche de l'environnement de production et master est la branche principale de développement.
2. La branche de déploiement a plusieurs configurations de fichiers différentes de celles de la branche principale. Habituellement, la branche principale est fusionnée dans la branche de déploiement, ce qui ne modifie pas les informations du fichier de configuration sous la branche de déploiement.
3. Fusion accidentelle de la branche de déploiement dans la branche principale, provoquant le remplacement du fichier de configuration sous la branche principale par celui de la branche de déploiement, et un push a été effectué, et le fichier de configuration sous la branche principale distante est également devenu sous la branche de déploiement.
4. J'ai modifié le fichier de configuration sous la branche master et je l'ai repoussé, mais maintenant je n'ose plus le fusionner dans la branche de déploiement car je crains que la configuration sous la branche master ne remplace la configuration sous la branche de déploiement.
Maintenant, je souhaite restaurer la version avant la branche master et la version dans l'entrepôt distant. Ce qu'il faut faire?

某草草某草草2799 Il y a quelques jours953

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

  • 某草草

    某草草2017-05-02 09:52:50

    En fait, c'est très simple. L'auteur peut d'abord effectuer l'opération de restauration localement :

    • Récupérer la valeur de hachage correspondant au statut principal précédent via le journal de soumission

    git log

    Copiez son hachage, disons 664d6cf35a7.

    • Puis le temps revient à l'état précédent

    git reset --hard 664d6cf35a7

    Après la restauration, supprimez la branche principale distante :

    git push origin --delete master

    S'il ne peut pas être supprimé, vous pouvez d'abord définir la branche par défaut sur une autre branche à distance, comme déployer. Si l'entrepôt distant de l'affiche est sur github, vous pouvez cliquer sur les branches settings->branches-.default de l'entrepôt correspondant et le modifier.

    Ensuite, exécutez la commande ci-dessus pour supprimer la branche principale distante.

    Après la suppression, vous pouvez désormais pousser à nouveau la branche principale, ce qui rétablira une branche principale dans l'entrepôt distant. Après avoir poussé, modifiez à nouveau l'entrepôt distant par défaut en maître.

    La situation actuelle est fondamentalement la même qu’avant.

    répondre
    0
  • 大家讲道理

    大家讲道理2017-05-02 09:52:50

    Rétablir la branche locale > Supprimer la branche distante > Pousser la branche locale (c'est-à-dire créer une nouvelle branche distante)

    Cependant, cette méthode ne convient pas aux branches protégées telles que master. Vous pouvez utiliser la méthode suivante :

    Rétablir la branche locale > Forcer le push de la branche locale (forcer le push pour écraser le contenu de la branche distante)

    répondre
    0
  • Annulerrépondre