Annuler une erreur git bisect

165

Je fais un git bisect non automatisé via la ligne de commande. Tout va bien jusqu'à ce que j'appuie accidentellement sur return sur la mauvaise ligne de mon historique de commandes, et plutôt que de lancer le test, je lance «git bisect good» (ou mauvais). Oups, je ne sais pas encore si ce commit doit être marqué comme bon ou mauvais, mais c'est ce que j'ai fait.

Puis-je annuler la commande 'git bisect good', ou faire en sorte que git oublie le résultat de celle-ci, et revenir en arrière et exécuter le test pour ce commit?

Avantages Graham
la source

Réponses:

206

De la documentation de git-bisect :

Bisect Log and Bisect Replay

Après avoir marqué les révisions comme bonnes ou mauvaises, exécutez la commande suivante pour montrer ce qui a été fait jusqu'à présent:

$ git bisect log

Si vous découvrez que vous avez commis une erreur en spécifiant l'état d'une révision, vous pouvez enregistrer la sortie de cette commande dans un fichier, le modifier pour supprimer les entrées incorrectes, puis émettre les commandes suivantes pour revenir à un état corrigé:

$ git bisect reset
$ git bisect replay that-file
manojlds
la source
99

Vous pouvez sortir un enregistrement de ce qui a été fait en utilisant

$ git bisect log > bisect.log

Ouvrez ce fichier dans un éditeur et modifiez / supprimez la ligne défectueuse. Ensuite, vous pouvez le rejouer avec

$ git bisect replay bisect.log

Ceci est documenté dans git help bisect.

Benjamin Bannier
la source
1
git bisect resetDevez -vous également répondre @manojlds comme indiqué?
Colin D
@ColinD Je n'ai pas eu besoin de réinitialiser d'abord. J'utilise git version 2.19.1.windows.1
AlexMA