728x90
remote 저장소까지 반영된 commit을 되돌릴 때에는 기록이 남도록 Revert하는 것이 맞지만?
흔적도 없이,,,,commit을 없애버리고 싶을 때,,,쓰는 방법을 기록해둡니다
원격 저장소에 반영된 Commit 되돌리는 방법
0. 되돌릴 commit 확인
아래 명령어로 몇 개의 commit을 되돌릴 건지 확인합니다
git log
"I wanna remove this Commit" commit이 아래 사진에서처럼 원격 저장소까지 반영되었음을 확인할 수 있습니다 🤣
1. git reset
되돌릴 commit 수만큼 다음 명령어를 실행합니다
git reset HEAD~{되돌릴 commit 수}
명령어 실행 후, log를 확인해보면 해당 commit이 삭제된 것을 확인할 수 있습니다
🔎 Reset 할 때 변경사항 남기지 않기
위에서는 Unstaged changes after reset 파일로 인해 reset을 실행했음에도 변경사항은 로컬에 남아있습니다
reset 이후에 파일 변경사항을 남기고 싶지 않다면 다음처럼 hard 옵션을 사용하면 됩니다
git reset HEAD~{되돌릴 commit 수} --hard
2. 원격 저장소에 push
다음 사진처럼 그냥 push 하려고 하면 reject 됩니다 😞
강제로 변경사항을 push하기 위해 옵션을 추가하여 다음 명령어를 실행합니다
git push -f origin master
🌟 원격 저장소에 반영 성공 🌟
References
728x90
'Programming > Git' 카테고리의 다른 글
[Git] Rebase로 브랜치 병합하기 / Rebase vs Merge 차이 (3) | 2022.09.25 |
---|---|
[Git] Squash Commit / Merge : 여러 개의 Commit 합치기 (1) | 2022.09.25 |
[Github] Issue 및 Issue Branch 생성하여 프로젝트 관리하기 (0) | 2022.09.24 |
[Git] Cherry-pick 변경사항 다른 브랜치에 반영하기 / 충돌(Conflict) 해결 (0) | 2022.09.24 |
[Git] 윈도우에 Git 설치 및 사용자 이름/이메일 등록 (0) | 2022.09.18 |