- 이전 모든 커밋 지우기, git 저장소 초기화

 

//---------------------------------

< 방법 1>

    - .git 폴더를 삭제

    - submodule을 사용하고 있으면 적용 불가한 방법



설정 파일 .git/config  백업

rm -rf .git # .git 폴더 삭제

 

git init    # git 초기화

백업해 놓은 설정 파일 복사 .git/config 

 

git add .

git commit -m "Initial commit"

git push -u --force origin master




//---------------------------------

< 방법 2>

    - .git 폴더를 삭제 하지 않음

    - 폴더 삭제 방법보다 나은 점은 잘 모르겠음, git reflog에 이전 기록이 어느 정도 남음



git checkout --orphan newBranch # 부모없는 새로운 브랜치 생성

git add -A  

git commit

git branch -D master        # 이전 master 브랜치 삭제

git branch -m master        # 현재 브랜치 이름을 master 로 변경

git push -f origin master       

git gc --aggressive --prune=all     # 이전 파일 삭제




//----------------------

// 참고

https://stackoverflow.com/questions/9683279/make-the-current-commit-the-only-initial-commit-in-a-git-repository/13102849#13102849



반응형
Posted by codens codens
TAG

댓글을 달아 주세요