ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [git] revert 할 수 없을 때, commit revert is a merge but no -m option was given.
    git 2022. 8. 29. 00:42

     

    커밋을 revert 시킬 때 아래 명령어를 사용할 수 있습니다.

    git revert {commit hash}

     

     

    하지만 브랜치가 여러 개 있을 경우, 아래 에러 메시지가 나오며 불가능할 때가 있습니다.

    commit { } is a merge but no -m option was given.

    merge 한 커밋을 revert 하려고 하는데, 누구를 revert 할지가 애매해서 하기 때문에 -m(merge) 사용해 옵션을 어떤 머지를 revert 할 지 명확하게 지정해달라는 의미입니다. 아래 과정으로 처리해줄 수 있습니다. 

    • git cat-file -p {hash} 로 tree 확인가능
      • tree 의 두 부모 중 하나를 정해줘야함.
    • m1 면 머지된 tree
    • m2 면 머지시킨 tree
    git revert {commit hash} -m 1

    -m 1 면 머지된 브랜치를 기준으로 revert
    -m 2 면 머지시킨 브랜치를 기준으로 revert

     

    읽어주셔서 감사합니다 :) 

    댓글

Designed by Tistory.