难道没有办法从git存储库中完全删除提交以节省一些空间吗?

时间:2016-02-01 08:34:43

标签: git version-control

我想要一种从git存储库中删除(真正删除)提交或分支的方法,除了节省空间之外,我试图使用' git branch -d branch-name'删除分支或' git reset Head~ - hard'但是只是删除或移动分支头,仍然存在提交,我可以将分支头重新分配给任何提交。

没有删除整个存储库文件夹并重新初始化的方法吗?

1 个答案:

答案 0 :(得分:3)

Git在你的行动周围建立了一个很好的安全网,一旦进入一个真正的行动,你的脚就会被淹没。强烈建议不要在日常工作流程中做你想做的事。

话虽如此:您要查找的命令是git gcgit prune

例如参见这个问题:
git gc --aggressive vs git repack

您可能还需要清除您的reflog:
git gc --aggressive --prune=all does not remove big file from repository

再次:reflog就像一个巨大的撤销堆栈;如果你把它的内容扔掉了,就不要再使用它了。