我的任務是掃描內部 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
提交
取消