반응형
Git: 모든 커밋을 제거하기 위해 원격 Git 저장소를 재설정하는 방법은 무엇입니까?
원격 및 로컬 Git 저장소를 재설정하여 모든 커밋을 제거하려면 어떻게 해야 합니까?
저는 현재 헤드를 초기 커밋으로 하여 새롭게 시작하고 싶습니다.
완전히 재설정?
삭제
.git로컬 디렉터리입니다.Git 저장소를 다시 만듭니다.
$ cd (project-directory) $ git init $ (add some files) $ git add . $ git commit -m 'Initial commit'원격 서버에 푸시, 덮어쓰기.당신이 이 일을 하는 다른 모든 사람들을 엉망으로 만들 것이라는 것을 기억하세요. 당신이 유일한 고객이 되는 것이 좋습니다.
$ git remote add origin <url> $ git push --force --set-upstream origin master
먼저 이 질문의 지침에 따라 모든 내용을 한 번의 커밋으로 압축합니다.그런 다음 리모컨을 강제로 누릅니다.
$ git push origin +master
선택적으로 다른 모든 지점을 로컬 및 원격으로 삭제할 수 있습니다.
$ git push origin :<branch>
$ git branch -d <branch>
내가 당신이라면 다음과 같은 일을 할 것입니다.
어떤 일을 하기 전에 사본을 보관하십시오(죄송한 것보다 안전한 것이 좋습니다).
git checkout master
git checkout -b temp
git reset --hard <sha-1 of your first commit>
git add .
git commit -m 'Squash all commits in single one'
git push origin temp
그런 다음 다른 분기를 삭제할 수 있습니다.
결과: 2개의 커밋만 있는 분기가 생성됩니다.
사용하다
git log --oneline당신의 커밋을 미니멀리즘 방식으로 보고 커밋을 위한 SHA-1을 찾는 것!
언급URL : https://stackoverflow.com/questions/2006172/git-how-to-reset-a-remote-git-repository-to-remove-all-commits
반응형
'codememo' 카테고리의 다른 글
| 데이터베이스 열에서 행 생성 (0) | 2023.07.22 |
|---|---|
| Oracle SQL에서 GROUP BY 절에 열 별칭을 사용할 수 없는 이유는 무엇입니까? (0) | 2023.07.17 |
| DataFrame의 문자열이지만 dtype은 개체입니다. (0) | 2023.07.17 |
| ((void*)0)이 null 포인터 상수입니까? (0) | 2023.07.17 |
| Python에서 Selenium WebDriver로 텍스트를 얻는 방법 (0) | 2023.07.17 |