Deshacer un error git bisect

164

Estoy haciendo una bisección git no automatizada a través de la línea de comando. Todo va bien hasta que accidentalmente presiono regresar en la línea incorrecta en mi historial de comandos, y en lugar de ejecutar la prueba, ejecuto 'git bisect good' (o bad). ¡Vaya! Todavía no sé si este commit debe marcarse como bueno o malo, pero eso es lo que he hecho.

¿Puedo deshacer el comando 'git bisect good', o hacer que git olvide el resultado y volver y ejecutar la prueba para ese commit?

Graham Perks
fuente

Respuestas:

206

De la documentación de git-bisect :

Registro de bisectos y reproducción de bisectos

Después de haber marcado las revisiones como buenas o malas, emita el siguiente comando para mostrar lo que se ha hecho hasta ahora:

$ git bisect log

Si descubre que cometió un error al especificar el estado de una revisión, puede guardar el resultado de este comando en un archivo, editarlo para eliminar las entradas incorrectas y luego emitir los siguientes comandos para volver al estado corregido:

$ git bisect reset
$ git bisect replay that-file
manojlds
fuente
98

Puede generar un registro de lo que se hizo usando

$ git bisect log > bisect.log

Abra ese archivo en un editor y edite / elimine la línea defectuosa. Entonces puedes reproducirlo con

$ git bisect replay bisect.log

Esto está documentado en git help bisect.

Benjamin Bannier
fuente
1
¿Tienes que también git bisect resetcomo indica la respuesta @manojlds?
Colin D
@ColinD No tuve que reiniciar primero. Estoy usando git versión 2.19.1.windows.1
AlexMA