2012-12-18 2 views
12

여러 커밋 (commit1/2/3)을 수행 했으므로 작업 디렉토리를 숨김없이 변경했습니다. 그런 다음 전 몇 가지 커밋으로 돌아가고 싶었습니다. 그래서 되돌리기 commit1 commit2 commit3 이눔 아,하지만 난 내 변경 (commit4)을 투입 들었다, 그래서 그것을 한 다음 다시 되돌리기 commit1 commit2 commit3 commit4 이눔 만든, 그러나 나는 메시지를 가지고강제 종료가 실패했습니다.

error: a cherry-pick or revert is already in progress hint: try "git cherry-pick (--continue | --quit | --abort)"

때 나는 git branch -va를 실행하고, HEAD는 커밋 3을 가리키고있다.

나는 무슨 일이 일어나고 있는지 잘 모른다. 나는 물건을 되돌리기 위해 지금 무엇을해야합니까?

답변

16

깨끗한 색인과 작업 트리를 사용하여 되돌리기를 시작하는 것이 가장 좋습니다.
그렇지 않으면 이전 되돌리기가 진행되는 동안 두 번째 되돌리기 (새 커밋 상단에서)를 수행하면 해당 오류 메시지가 표시됩니다. 당신이 commit 3 여전히 있기 때문에

, 당신은 할 수 :

(. this thread에서 혼자 HEAD를 떠나 비켜으로 복귀 알려줍니다)
  • git cherry-pick --quit,
  • 색인 및 작업을 검토 tree (git status),
  • 깨끗한 상태 (새 커밋과 같은)를 얻으려면 조정을하고
  • 그리고 git revert을 다시 실행하십시오.

(당신이 "Rollback to Previous Commit - Github for MAC (a revert is already in progress)"에서 다른 옵션을 볼 수 있습니다)

당신은 단순히 당신이 밀어 강제 할 것 (비록 그 세 커밋 잊어하려는 경우 git reset 잊지 마세요 : 위해, git push --force을 해당 지사에 대한 내역을 게시하십시오. 다른 지사가 이미 동일한 지사에서 가져온 경우 git revert을 사용하는 것이 더 좋습니다.

관련 문제