我的任务是扫描内部 Git 存储库以查找敏感信息(或不应公开的信息)。我的主要问题是一些开发人员已将大 blob (+100 MB) 提交到他们的 Git 存储库,这需要很长时间才能下载并且在扫描时被忽略。有什么办法可以告诉 Git 只克隆大小低于指定限制的文件吗?如果没有,是否有更好的方法来扫描 Git 存储库中的敏感信息?
1 回答
holdtom
TA贡献1805条经验 获得超10个赞
是的,这可以通过称为部分克隆的新功能实现。你可以在克隆时指定一个过滤器,Git 将根据该过滤器限制它获取的数据量。
例如,您可以执行以下操作,这将克隆没有任何大于 100 MiB 的 blob 的 Git 存储库:
git clone --filter=blob:limit=100m https://github.com/git/git.git
请注意,为此,您应该使用可用的最新版本的 Git (2.26.2),并且您还需要有一个合适的服务器端实现。GitHub 确实支持这一点,但其他服务器实现可能会也可能不会。
请注意,尽管 GitHub 确实支持部分克隆,但出于效率原因,它限制了可用的过滤器。不过,应该支持按大小限制 blob。
添加回答
举报
0/150
提交
取消