Git仓库瘦身

By Jamie

平常推送Git仓库时,可能无意间推送一些无效文件,仓库变的越来越大,可以参考下方流程实现对仓库的瘦身 Git仓库500MB,通过git-filter-repo实现,瘦身后的效果

Crepe

安装脚本

  • 依赖python3
pip3 install git-filter-repo

命令

  • 查找仓库内占用存储最大的几个文件
git rev-list --objects --all | grep "$(git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | tail -40 | awk '{print$1}')"
  • 删除指定的文件
# 指定后缀
git filter-repo --force --invert-paths --path-regex .+\.whl

# 指定目录
git filter-repo --force --invert-paths --path depend

更新仓库

  • 备份一次仓库
  • 备份一次仓库
  • 备份一次仓库(说三遍)

⚠️⚠️⚠️需要创建一个新的仓库,否则瘦身之后的推送无法达到效果⚠️⚠️⚠️

  • 命令
# 删除当前仓库关联
git remote remove origin
# 新增远程仓库
git remote add origin 地址
# 提送所有的分支
git push --all origin
# 推送所有的Tag
git push --tags

问题

  • 删除仓库时的问题

Crepe

  • 在使用gitlab时,在删除仓库后,覆盖原仓库时出现此问题,暂时还未找到方案

Crepe

Tags: install