优化 Git 仓库体积通常可以从清理历史大文件、压缩对象、规范提交与忽略规则、使用浅克隆/部分克隆等方面入手。下面按「由重到轻」的方式给你一套实用方案。
git count-objects -vH
du -sh .git
更详细地看大文件:
git rev-list --objects --all \
| git cat-file --batch-check='%(objecttype) %(objectname) %(objectsize) %(rest)' \
| awk '/^blob/ {print $3, $4}' \
| sort -n
git filter-repo(推荐)官方已取代
filter-branch
pip install git-filter-repo
git filter-repo --strip-blobs-bigger-than 10M
或删除某个文件的所有历史:
git filter-repo --path path/to/bigfile --invert-paths
⚠️ 注意:
java -jar bfg.jar --strip-blobs-bigger-than 10M repo.git
git gc --aggressive --prune=now
git repack -ad
清理远程:
git remote prune origin
.gitignore 与 Git LFS*.log
node_modules/
build/
*.zip
git lfs install
git lfs track "*.psd"
git add .gitattributes
git clone --depth 1 repo.git
git clone --filter=blob:none repo.git
git sparse-checkout init --cone
git sparse-checkout set src docs
git gc如果你愿意,可以告诉我:
我可以给你针对性的最小化操作方案。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。