如何删除github中的所有提交历史logging?

我想删除所有的提交历史logging,但保持代码处于当前状态。

因为在我的提交历史中,有太多未使用的提交。

我该怎么做 ?

有没有任何git命令可以做到这一点?

git filter-branch ? git rebase ? ... 

我的代码主机在github.com。

删除.git文件夹可能会导致您的git存储库中的问题。 如果要删除所有提交历史logging,但将代码保持在当前状态,则执行以下操作非常安全:

  1. 查看

    git checkout --orphan latest_branch

  2. 添加所有文件

    git add -A

  3. 提交更改

    git commit -am "commit message"

  4. 删除分支

    git branch -D master

  5. 将当前分支重命名为主

    git branch -m master

  6. 最后强制更新你的仓库

    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文件夹)!