Как я могу сбросить удаленный и локальный репозиторий 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
--allow-emptyфлаг в конце git commit -m 'Initial commit'.
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 для коммитов!