Git 저장소 히스토리 초기화하기

안녕하세요, 여러분! 오늘은 Git 저장소의 히스토리를 초기화하는 방법에 대해 알아보도록 하겠습니다. 가끔 프로젝트를 진행하다 보면, 저장소의 커밋 히스토리를 초기화해야 할 때가 있죠. 그럴 때 아래 방법을 따라해 보시면 쉽게 해결할 수 있습니다.

먼저, 작업을 진행하는 로컬 컴퓨터에 Git이 설치되어 있는지 확인해 주세요. 터미널에서 아래 명령어를 입력하면 설치된 Git의 버전을 확인할 수 있습니다.

$ git --version
git version 2.39.0

Git이 설치되어 있다면, 아래 단계를 따라 저장소 히스토리를 초기화해 봅시다.

  1. 새로운 브랜치 생성
    • git checkout --orphan tmp_branch 명령어를 사용하여 tmp_branch라는 이름의 새 브랜치를 생성합니다.
    • --orphan 옵션은 기존 커밋 히스토리와 완전히 분리된 새로운 브랜치를 만듭니다.
  2. 전체 파일 추가
    • git add -A 명령어를 사용하여 저장소의 모든 파일을 새로 만든 tmp_branch브랜치에 추가합니다.
    • -A 옵션은 저장소 내 모든 파일을 스테이징 영역에 추가합니다.
  3. 초기 커밋 생성
    • git commit -am "Initial commit" 명령어를 사용하여 추가된 파일들을 tmp_branch 브랜치에 초기 커밋으로 커밋합니다.
    • -a 옵션은 수정된 파일을 자동으로 스테이징 영역에 추가하고, -m 옵션은 커밋 메시지를 지정합니다.
  4. 기존 브랜치 삭제
    • git branch -D master 명령어를 사용하여 기존의 master 브랜치를 삭제합니다.
    • -D 옵션은 병합되지 않은 브랜치도 강제로 삭제합니다.
    • 이 단계에서 기존 커밋 히스토리도 함께 삭제됩니다.
  5. 새 브랜치 이름 변경
    • git branch -m master 명령어를 사용하여 tmp_branch 브랜치의 이름을 master으로 변경합니다.
    • -m 옵션은 브랜치의 이름을 변경합니다.
  6. 원격 저장소에 강제 업데이트
    • git push -f origin +master 명령어를 사용하여 로컬의 master 브랜치를 원격 저장소에 강제로 업데이트합니다.
    • -f 옵션은 강제 업데이트를 수행하며, + 기호는 브랜치를 강제로 덮어씁니다.

이제 Git 저장소의 히스토리가 초기화되었습니다! 이 방법은 저장소의 모든 커밋 히스토리를 삭제하므로, 주의 깊게 사용해야 합니다. 필요한 경우에만 사용하시길 바라며, 항상 백업을 해두는 것이 좋습니다. 오늘도 함께 Git을 배워 가는 시간이었습니다. 다음에는 또 어떤 유용한 팁을 소개해 드릴 수 있을지 기대해 주세요!