Desfazendo um erro de bisit do git


164

Estou fazendo um bisit não automatizado do git via linha de comando. Tudo está indo bem até eu acidentalmente clicar em retornar na linha errada no meu histórico de comandos e, em vez de executar o teste, corro 'git bisect good' (ou ruim). Ops - ainda não sei se esse commit deve ser marcado como bom ou ruim, mas foi o que fiz.

Posso desfazer o comando 'git bisect good' ou fazer o git esquecer o resultado e voltar e executar o teste desse commit?

Respostas:


206

Na documentação do git-bisect :

Bisect log e bisect replay

Depois de marcar as revisões como boas ou ruins, execute o seguinte comando para mostrar o que foi feito até agora:

$ git bisect log

Se você descobrir que cometeu um erro ao especificar o status de uma revisão, poderá salvar a saída deste comando em um arquivo, editá-lo para remover as entradas incorretas e, em seguida, emitir os seguintes comandos para retornar ao estado corrigido:

$ git bisect reset
$ git bisect replay that-file

98

Você pode gerar um registro do que foi feito usando

$ git bisect log > bisect.log

Abra esse arquivo em um editor e edite / remova a linha com defeito. Então você pode reproduzi-lo com

$ git bisect replay bisect.log

Isso está documentado em git help bisect.


1
Você precisa também git bisect resetcomo a resposta do @manojlds é indicada?
Colin D

@ CololinD Eu não precisei redefinir primeiro. Eu estou usando a versão 2.19.1.windows.1 do git
AlexMA
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.