답변:
편집 : 그것이 당신에게 더 쉬운 해결책인지 확인하기 위해 아래 답변을보십시오. https://stackoverflow.com/a/12163247/493106
나는 그것을 시도해야하지만 이것이 내가 할 것이라고 생각합니다.
git tag tempgit rebase --abortgit rebase --continuegit cherry-pick temp이 문제는 temp커밋에 병합의 해결 방법과 새 코드가 모두 포함되어 있다는 것입니다. 그래서 까다로울 수 있지만 시도해보고 작동하는지 확인합니다.
그냥하세요 git reset --soft HEAD^. HEAD 포인터를 부모로 이동하지만 작업 트리를 유지하고 병합 변경 사항을 인덱스에 추가합니다. 따라서 git rebase --continue이전 과 같이 리베이스를 계속할 수 있습니다 .
나는 같은 문제를 겪었고, 설상가상으로 3 개의 커밋을 리베이스하고 있었고, 두 번째 커밋에서 충돌을 해결 한 후 "rebase --continue"대신 "커밋"했습니다.
결과적으로 나는이 자식 reflog를 가졌습니다.
kirikaza의 솔루션을 적용 할 때 문제가되는 두 번째 커밋이 아닌 세 번째 커밋을 되돌 렸습니다.
보시다시피 rebase는 remotes / origin / master 브랜치의 체크 아웃으로 시작한 다음 reflog에서 이전 작업 (체크 아웃 전)으로 나타나는 세 개의 커밋을 적용합니다.
그런 다음 클린베이스에서 다시 시작하려면 rebase 전에 rebase 작업을 체크 아웃하기 직전에 해시로 하드 재설정하면됩니다. 제 경우에는 (그림 참조) :
git reset --hard 859ed3c
그런 다음 새 git rebase.