git仓库中.git文件夹过大的问题

由于git仓库中存放了较大的文件,之后即使在gitignore中添加,也不会导致.git文件夹变小。

参考[1](#1) [2](#2)

通过

复制代码
du -d 1 -h

查看文件大小

使用

bash 复制代码
git rev-list --objects --all | grep "$(git verify-pack -v .git/objects/pack/*.idx | sort -k 3 -n | tail -5 | awk '{print$1}')"

查看git缓存中较大的文件。

安装 git-filter-repo

复制代码
pip install git-filter-repo

使用

复制代码
git filter-repo --invert-paths --path 文件 --force

删除相关提交内容

如果还有不需要的内容,重复以上过程

之后可以看到

复制代码
du -d 1 -h

.git下没有太多内容了

之后使用git命令处理垃圾

bash 复制代码
rm -rf .git/refs/original/
git reflog expire --expire=now --all
git gc --prune=now

结束

注意

可能处理完找不到远程仓库,需要

git remote add 远程地址

一下


  1. # 记录删除.git记录大文件的过程 ↩︎

  2. https://blog.csdn.net/dss875914213/article/details/131500224 ↩︎

相关推荐
ShineWinsu13 小时前
对于Git:远程操作的超详细保姆级解析
linux·git·gitee·github·远程仓库·分布式版本控制系统·远程操作
梦帮科技14 小时前
从 Guest 到 Platinum:Prompt 配额、API Key 与访问控制的安全闭环
javascript·git·架构·node.js·reactjs·html5·visual studio
zho_uzhou1 天前
Git入门概念
git
爱奥尼欧2 天前
【Git】远程分支删了本地还在、两个分支历史不相干?两招故障排解
开发语言·git
Java后端的Ai之路2 天前
Git冲突完整排查与实战:本地修改覆盖报错到成功推送全流程复盘
开发语言·人工智能·git·python·pop
一个心烑2 天前
配置项目git的 SSL 证书
git·网络协议·ssl
IT从业者张某某2 天前
【鸿蒙PC命令行适配】GitUI 移植的工程实践:双 Git 引擎(libgit2/gitoxide)的鸿蒙适配之路
git·华为·harmonyos
xinjia_ctrl2 天前
暑假实习总结
git·后端·spring·maven·intellij-idea
Molesidy2 天前
【Git】分别给出添加到Keil工程和IAR工程中的gitnore文件以便不跟踪编译文件的git记录
git·vscode·插件
颜颜yan_2 天前
Git Cola 鸿蒙 PC 版适配全记录:从 Qt 桌面工具到 ArkTS 原生应用
git·qt·harmonyos