- 이전 모든 커밋 지우기, 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



반응형

'Code' 카테고리의 다른 글

git 초기화(히스토리 로그 삭제)  (0) 2021.04.25
[git] 이미 커밋한 메시지 수정 방법  (0) 2021.04.25
VS Code 포매터 지정 방법  (0) 2021.04.13
VS Code Extension 만들기  (0) 2021.04.13
Git Client (GUI)리스트  (0) 2021.03.29
Go 언어  (0) 2021.03.06
Posted by codens codens
TAG

댓글을 달아 주세요