如何从我的git回购中删除未引用的小块

如何从我的git回购中删除未引用的小块

我有一个GitHub回购,有两个分支-主人和释放。

发布分支包含二进制分发文件,这些文件造成了非常大的回购规模(>250 MB),因此我决定清理这些文件。

首先,我删除了远程发布分支,通过git push origin :release

然后我删除了本地发布分支。一开始我试着git branch -d release但是吉特说“错误:分支‘释放’不是你当前头部的祖先。”这是真的,所以我做了git branch -D release强制删除它。

但是,无论是在本地还是在GitHub上,我的存储库规模仍然很大。然后,我浏览了通常的git命令列表,比如git gc --prune=today --aggressive没有运气。

按照查尔斯·贝利的指示所以1029969我得到了一个SHA 1的最大的斑点列表。然后,我使用了所以460331为了找出小块.而最大的五块不存在,虽然发现了较小的点,所以我知道脚本是工作的。

我认为这些博客是发布分支的二进制文件,在删除该分支之后,它们不知怎么就被留下了。摆脱他们的正确方法是什么?


吃鸡游戏
浏览 590回答 3
3回答

MMTTMM

如所述这里,简单地使用git reflog expire --expire-unreachable=now --all git gc --prune=nowgit reflog expire --expire-unreachable=now --all中删除所有不可访问提交的引用。reflog.git gc --prune=now移除提交本身。注意*仅使用git gc --prune=now不会工作,因为这些提交仍然在重发中引用。因此,清除刷新是强制性的。
打开App,查看更多内容
随时随地看视频慕课网APP