如何删除github中的所有提交历史logging?
我想删除所有的提交历史logging,但保持代码处于当前状态。
因为在我的提交历史中,有太多未使用的提交。
我该怎么做 ?
有没有任何git命令可以做到这一点?
git filter-branch ? git rebase ? ...
我的代码主机在github.com。
删除.git
文件夹可能会导致您的git存储库中的问题。 如果要删除所有提交历史logging,但将代码保持在当前状态,则执行以下操作非常安全:
-
查看
git checkout --orphan latest_branch
-
添加所有文件
git add -A
-
提交更改
git commit -am "commit message"
-
删除分支
git branch -D master
-
将当前分支重命名为主
git branch -m master
-
最后强制更新你的仓库
git push -f origin master
PS:这不会保留你的旧的提交历史
如果您确定要删除所有提交历史logging,只需删除项目根目录中的.git
目录(请注意它已隐藏)。 然后在同一个文件夹中初始化一个新的存储库,并将其链接到GitHub存储库:
git init git remote add origin git@github.com:user/repo
现在提交你的当前版本的代码
git add * git commit -am 'message'
最后强制更新到GitHub:
git push -f origin master
不过,我build议在执行这些步骤之前备份历史logging(存储库中的.git
文件夹)!