我有一个GitHub代码库,其中有两个分支-master和release。
release分支包含二进制分发文件,这些文件导致存储库的大小非常大(超过250 MB),因此我决定进行清理。
首先我通过git push origin :release
删除了远程release分支。
然后我删除了本地的release分支。首先我尝试使用git branch -d release
,但Git说"error:The branch 'release' is not an ancestor of your current HEAD."是真的,所以我执行git branch -D release
来强制删除它。
但是我的存储库大小,在本地和GitHub上仍然很大。然后我按照常规的Git命令列表运行了git gc --prune=today --aggressive
,但没有任何结果。
通过遵循Charles Bailey在SO 1029969中的说明,我可以获取最大blob的SHA-1哈希列表。然后我使用SO 460331中的脚本找到了blob ......而且最大的五个不存在,尽管找到了较小的blob,所以我知道该脚本正在工作。
我认为这些博客是发布分支的二进制文件,并且它们在删除该分支后被留下。正确的方法是如何摆脱它们?