최근 깃허브에 공부한 내용 올리고 하다보니 API Key를 올려버리는 어처구니 없는 실수를 저질렀다
사실 전혀 API Key 자체를 인지하지 못했는데 G메일로 깃가디언?이
| GitGuardian has detected the following Google API Key exposed within your GitHub account. |
|---|
라고 알려줬다..
이게 뭔 상황인가 하고 검색해보니 자칫하다가는 계정이 정지되거나 API 키를 재발급 받아야 할 수도 있다고 했다.
심지어 이 key는 내 키가 아니라 수업 때 사용했던 강사님 키라 큰 민폐가 될 뻔한 상황이었던...
그래서 빠르게 파일을 수정하고 다시 push를 해서 괜찮을 줄 알았는데... 알고보니 history에는 그대로 남아있었다!!ㅠㅠ
이 히스토리를 어떻게 지워야 하나 모르겠어서 검색을 한 끝에 github에 올라갔던 그 파일 그 시점 전으로 되돌리기를 해서 겨우 수습을 할 수 있었다
- 돌아가고자 하는 지점 찾기
git log - 돌아가고자 하는 시점의 commit 확인
- 리셋하기
git reset --hard: 돌아가고자 하는 시점의 commit >> HEAD is now at .. 이 나오면 성공 git push -f origin mater로 저장
- git reset
- commit 상태를 원하는 시점으로 되돌리기
- pointer 기준으로 노드끼리 연결을 끊어냄
- 끊어낸 후 지정 commit 이후의 파일은 삭제됨
- git reset 옵션
hard: 주의!! 다시 되돌릴 수 없음- 지정된 commit 이후의 기록과 파일 모두 지움
mixed(default)- commit 기록은 삭제하되, 기존 파일 untracked 상태로 제공
git reset==git reset --mixed
soft- commit 기록은 삭제되지만, 파일은 staged 상태로 남음
git push --force- force 옵션으로 강제로 push
- 혼자 쓰는 branch면 마음대로 해도 되지만
- 공유 중인 branch이면 주의해서 사용
다행히 며칠 밖에 안된 상황이었고 업무 상황이 아닌 개인 기록용이여서 다행인 상황이었다. 회사 업무 중 이런 상황이었더라면 ...;;;;
이런 실수를 다신 안저지르도록 보안에 좀더 신경써야겠다. 그리고 gitignore 사용하기 꼭!