git clone --filter=blob:none
允许我快速克隆repo,而无需下载千兆字节的对象。正如预期的那样,回购规模很小,因为git只克隆了当时最新的Blob。比如说,我使用这个repo,切换分支,比较等等。Git会在需要时下载对象。现在,由于所有下载的对象,我的回购在本地的规模再次增加。有没有办法删除所有本地blob并只保留最新的blob?换句话说,当我第一次使用带有所有提交、树但只有最新blob的部分克隆来克隆repo时,有没有办法达到同样的状态?
附言:我知道我可以再次克隆一个新的部分回购。但我想知道,如果不需要再次克隆,某些事情是否可能。
由于不直接支持此功能,请至少尝试git gc
或更新的(Git 2.30+(git maintenance
git maintenance run --task gc
git maintenance run --task loose-objects --task incremental-repack
这不会是你的初始状态,但应该更小。