Eu estava redefinindo o código no git, encontrei alguns conflitos de mesclagem. Resolvi os conflitos e fiz:
git add
Nesse ponto, esqueci de fazer:
git rebase --continue
Continuei codificando e fiz:
git commit
para as mudanças. Agora estou ligado "no branch"
e não posso fazer:
git rebase --continue
Como faço para corrigir isso?
Respostas:
EDIT : Observe a resposta abaixo também para ver se essa é uma solução mais fácil para você. https://stackoverflow.com/a/12163247/493106
Eu teria que experimentar, mas acho que é o que eu faria:
git tag temp
git rebase --abort
git rebase --continue
git cherry-pick temp
O problema com isso é que seu
temp
commit provavelmente contém a resolução da fusão e o novo código. Portanto, pode ser complicado, mas eu tentaria e veria se funciona.fonte
Apenas faça
git reset --soft HEAD^
. Ele move o ponteiro HEAD para seu pai, mas mantém a árvore de trabalho e adiciona a alteração de mesclagem ao índice. Portanto, você pode continuar a rebase comgit rebase --continue
como antes.fonte
Eu tive o mesmo problema, e para piorar, eu estava rebasando três commits, e depois de resolver conflitos no segundo commit, eu "fiz commit" ao invés de "rebase --continue".
Como resultado, tive este reflog git
Quando apliquei a solução de kirikaza, acabei de reverter o terceiro commit, e não o segundo, o que era problemático.
Como você pode ver, o rebase começa por um checkout do remotes / origin / master branch e então aplica meus três commits que aparecem como as três operações anteriores (antes do checkout) no reflog.
Então, se você deseja reiniciar de uma base limpa, antes do rebase, você pode simplesmente redefinir totalmente para o hash antes do check-out da operação de rebase. No meu caso (veja a foto):
Então você pode começar um novo
git rebase
.fonte
Eu tinha git rebased, consertado conflitos, git adicionado arquivo com conflitos e (por engano) commitado.
Eu tentei o
git reset --soft HEAD^
egit reset --hard
soluções de dados, mas não funcionou para mim.No entanto, simplesmente
git rebase --abort
funcionou: ele me levou de volta para antes do início do rebase com uma árvore de trabalho limpa.fonte