[백엔드] 여러가지 정리
git commit 내역 삭제 (최초 커밋 / 최근 커밋)
e_jeong
2024. 5. 21. 01:51
가장 최근 커밋 삭제
git reset HEAD^
git push -f <remote> <branch>
최초 커밋까지 전부 삭제 방법 1
먼저, 가장 최근 커밋 삭제 방법을 통해 최초 커밋 외의 모든 커밋들을 삭제해준다.
1. 로컬 리포지토리에서 HEAD 삭제
git update-ref -d HEAD
2. 스테이징된 모든 파일 삭제 (마지막에 띄어쓰기 안 붙게 조심)
git rm --cached -r .
3. 모든 파일을 다시 추가하고 새로운 초기 커밋 커밋 만들기
git add .
git commit -m "Initial commit"
4. 새로운 초기 커밋을 원격 저장소에 강제 푸시
git push -f origin main
최초 커밋까지 전부 삭제 방법 2
1. 로컬에 클론 해온다.
2. 현재 브랜치 확인 및 체크아웃
git checkout main
3. 새로운 orphan 브랜치는 커밋 기록이 없는 새로운 브랜치 생성
git checkout --orphan temp_branch
4. 현재 디렉토리의 모든 파일을 스테이징하고 새로운 초기 커밋 생성
git add .
git commit -m "Initial commit"
5. 기존의 main 브랜치를 삭제하고 새로운 브랜치를 main으로 변경
git branch -D main
git branch -m main
6. 새로운 초기 커밋을 원격 저장소에 강제로 푸시
git push -f origin main