git-清空历史提交记录(保留原仓库)
0.备份
进行操作之前,一定一定要先备份,你直接copy项目文件夹也行。
1. 创建一个新的孤立分支
首先,创建一个新的孤立分支(没有历史记录)
git checkout --orphan new-branch
--orphan
参数:
- 孤立分支:使用
--orphan
创建的分支没有任何父提交记录,因此没有任何历史记录。这使得它看起来像一个全新的初始提交。 - 用途:这种方式常用于创建一个干净的开始,保留当前工作目录的所有文件,但清空了所有历史记录。
2. 添加所有文件
添加所有文件到新分支
git add .
3. 提交更改
提交这些更改
git commit -m "Initial commit with latest version of code"
4. 删除旧的分支
删除旧的主分支
git branch -D master
5. 重命名新的分支为主分支
将新的孤立分支重命名为主分支
git branch -m master
6. 强制推送到远程存储库
最后,强制推送新的主分支到远程存储库。
git push -f origin master
7.完整步骤总结
git checkout --orphan new-branch
git add .
git commit -m "Initial commit with latest version of code"
git branch -D master
git branch -m master
git push -f origin master
注意:强制推送 (-f
选项) 会覆盖远程存储库的历史记录。
这样,新的主分支将只有一个提交记录,该记录包含当前代码库的最新版本。
所有旧的提交记录都将被清空。