어제 토이 프로젝트를 깔끔하게 커밋하고 잠에 드려는 순간...

민감한 정보가 코드안에 들어가 커밋이 되어버렸다는 사실을 깨닫게 되었다....!!
이번 토이 프로젝트를 같이 진행하게 된 개발자는 이전 회사 CTO인데,
코딩 스타일이 병적으로 보안에 집착하는 스타일이다. 만약 해당 커밋을 보게 된다면 고개를 절레절레 저을 것이다..
사실 표현을 병적이라고 했지만 조금이라도 그분이랑 이야기를 나누어 본다면 집착하는 것이 당연하다는 것에 누구나 고개를 끄덕이게 될 것이다.
많은 초보 개발자들이 보안에 그렇게 신경을 안 쓰는 경향이 있는데, 인터넷 세상은 정말 위험하다.
지금도 깃헙에는 중요한 정보를 빼내서 자신의 이득을 위해 사용하려는 크롤링 프로그램들이 좀비처럼 떠다니고 있다.
그래서 오늘은 이 위험천만한 기록을 없애기 위해 커밋을 이전으로 돌리는 방법에 대해 알아보자.
1) 로컬의 프로젝트 파일에서 Git log로 돌아가고자 하는 커밋의 해시값을 찾아낸다.
git log
2) 그리고 원하는 커밋으로 로컬 프로젝트의 버전을 변경한다.
git reset --hard e59335e647ed842e92adb04aff9b0f0b41bdc15c
3) 깃허브 레파지토리에 강제로 푸시해 이후 기록을 없애버린다.
git push origin +e59335e647ed842e92adb04aff9b0f0b41bdc15c^:[브랜치명]
후ㅠ 큰일날뻔 했다...
[Git/GitHub] GitHub 원격 저장소의 커밋 삭제하기
👀 GitHub 원격 저장소의 커밋 삭제하기 1) 돌아가고 싶은 커밋의 ID 확인 (SHA-1 해시값) git log 2) 로컬 저장소에서 원하는 커밋으로 reset 'reset --hard'는 돌아간 커밋 이후의 변경 이력을 전부 삭제한
jjuha-dev.tistory.com
'Git' 카테고리의 다른 글
[git] 프로젝트 파일명 변경 후 cicd에 실패한다면 (0) | 2023.12.19 |
---|---|
[Git] 리파지토리에 파일을 클릭할 수 없을때?! (0) | 2021.12.25 |
[Git] .env 파일을 gitignore 해야하는 이유! (0) | 2021.12.13 |
Git 워크플로우-Advanced (0) | 2021.10.15 |
Git 워크플로우-Basic (0) | 2021.10.15 |