Comment faire pour revenir plusieurs commits git?

J'ai un dépôt git qui ressemble à ceci:

A -> B -> C -> D -> HEAD

Je veux la tête de la direction générale pour pointer vers Un, c'est à dire je veux, B, C, D, et la TÊTE de disparaître, et je veux la tête, synonyme de A.

Ça sonne comme je peux soit essayer de rebase (ne s'applique pas, puisque j'ai poussé les changements entre les deux), ou revenir en arrière. Mais comment puis-je revenir plusieurs engage? Dois-je revenir un à un? La commande est-elle importante?

  • Si vous voulez juste pour réinitialiser la télécommande, vous pouvez tabasser avec quoi que ce soit! Mais permettez-nous d'utiliser la quatrième commettre: il y a git push -f HEAD~4:master (en supposant que la distance n'est le maître). Oui, vous pouvez le pousser à commettre tout comme ça.
  • Si les gens ont tiré, vous devez faire un commit qui revient changements à l'aide de git revert.
  • L'utilisation de git show TÊTE~4 pour vous assurer que vous êtes en poussant à droite de la télécommande
  • Double Possible de Comment faire pour annuler le dernier commit(s) dans Git?
  • "L'ordonnance est-elle importante?" Oui, si l'engage influent sur les mêmes lignes dans les mêmes fichiers. Ensuite, vous devriez commencer à revenir le plus récent s'engager, et de travailler votre chemin de retour.
InformationsquelleAutor Bill | 2009-09-23