Git 即使删除 .git 目录后回购还是太大
Git Repo Too Large Even After Removing .git Directory
我有一个 3.6GB 的存储库。为了清理它,我删除了所有大文件,然后将删除内容推送到 BitBucket 中托管的远程 git 存储库。在此之后,我删除了本地的 .git 目录。我做了 git 初始化并将所有现有文件推送到现有的远程仓库。
尽管如此,BitBucket 仍然告诉我存储库太大?我查看了互联网上的各种解决方案,但它们似乎都引用了 BFG 和其他清洁工具。我的印象是所有这些脚本都只是清理。git。通过删除 .git 我希望删除任何不需要的文件,但显然不是这样。
如果我的 .git 目录不是问题,我想知道它可能是什么?
删除本地 .git
目录不会删除远程 Git 目录,该目录仍将包含所有旧内容,包括回购的早期历史和每个文件的每个版本致力于它。
如果您删除所有引用,使得存储库的整个历史记录不再可以从任何现有分支访问,那么 Git 应该最终对其进行垃圾回收,如果我没记错的话可能大约两周。如果您有 shell 访问权限,则可以 run git gc
yourself。
如果您真的不想要项目的任何历史记录,最好的办法是删除并重新创建远程存储库。
我有一个 3.6GB 的存储库。为了清理它,我删除了所有大文件,然后将删除内容推送到 BitBucket 中托管的远程 git 存储库。在此之后,我删除了本地的 .git 目录。我做了 git 初始化并将所有现有文件推送到现有的远程仓库。
尽管如此,BitBucket 仍然告诉我存储库太大?我查看了互联网上的各种解决方案,但它们似乎都引用了 BFG 和其他清洁工具。我的印象是所有这些脚本都只是清理。git。通过删除 .git 我希望删除任何不需要的文件,但显然不是这样。
如果我的 .git 目录不是问题,我想知道它可能是什么?
删除本地 .git
目录不会删除远程 Git 目录,该目录仍将包含所有旧内容,包括回购的早期历史和每个文件的每个版本致力于它。
如果您删除所有引用,使得存储库的整个历史记录不再可以从任何现有分支访问,那么 Git 应该最终对其进行垃圾回收,如果我没记错的话可能大约两周。如果您有 shell 访问权限,则可以 run git gc
yourself。
如果您真的不想要项目的任何历史记录,最好的办法是删除并重新创建远程存储库。