[Git] 잘못 올린 커밋, 복구해보자

    728x90

    .gitignore가 변경되기 전, 팀원이 secret 관련 파일을 main에 머지하여 secret이 노출되는 사고가 발생하였다.

    아래는 이를 해결하는 과정에 대한 기록이다. 모든 명령어는 CLI 기준이다.

    ❗️아래에서는 force/hard 등 강제적인 명령어를 사용하기 때문에 반드시 팀원들과 상의 후 진행하는 것이 좋다.

    오마오마갓..

    아래 log 확인 명령어를 통해 잘못 머지된 커밋의 바로 전 커밋 번호를 확인하였다.

    git log -g

    아래와 같이 reset 명령어를 사용하여 해당 커밋으로 이동한다.

    git reset 커밋번호 로 작성하면 된다. 

    git reset 6cd4a451...(이하생략)

    안되는 경우 --hard 옵션을 추가하면 된다. 

    git reset --hard 6cd4a451...

    +혹은 -force 옵션을 사용하여 push 한다. (❗️ push 시 해당 커밋 이후에 존재했던 모든 커밋은 사라진다. )

    git push origin +[브랜치명]
    git push -f [브랜치명]

    참고

    https://hidaehyunlee.gitbook.io/fork-my-brain/git/git-add-commit-push

    댓글