git清理本地.git文件夹下的缓存

游戏对接安卓的工程越来越大,占用空间都有几十G了,经过查看目录发现,是项目根目录下的.git文件夹占用的内存,

git gc

git prune

用这两个命令可以清除.git下无用的缓存。

git gc

git gc是Git中用于垃圾回收(Garbage Collection)的命令。它的主要目的是通过清理和优化Git仓库的存储来提高性能和节省磁盘空间。具体来说,git gc会执行以下操作:

  • 删除不再需要的对象和引用:例如,删除已经被丢弃的提交对象(这些对象没有被任何分支或标签引用)。
  • 压缩对象:将多个小的对象文件合并成一个大的对象文件,从而节省空间。
  • 合并提交:将小的提交对象合并成一个较大的提交对象,以提高访问效率。
  • 优化数据库:整理和压缩Git对象数据库,提升仓库的整体性能。

通常情况下,Git会自动处理垃圾回收任务,不需要手动执行git gc。但在仓库变得非常大或者性能明显下降时,可以手动运行git gc来进行优化。

git prune

git prune命令是一个内部管理实用程序,用于清理无法访问或"孤立的"Git对象。无法访问的对象是指任何引用都无法访问的对象。任何无法通过分支或标记访问的提交都被视为无法访问。git prune通常不直接执行,而是作为git gc命令的子命令来运行。

git prune会删除那些不再被任何分支、标签或其他引用(如reflog)指向的对象。这有助于进一步减小Git仓库的大小,并释放磁盘空间。

需要注意的是,在执行git gcgit prune之前,建议备份仓库,以防止意外的数据丢失。

相关推荐
林川~013 小时前
Unity新输入系统使用笔记
unity·input system
玄芯散人4 小时前
【筑基·058】Git协作工作流:冲突解决和PR流程
git·版本控制·团队协作
BoomHe5 小时前
Android Framework 文件应用移植到 AndroidStudio
android
传奇开心果编程6 小时前
【Jetpack Compose基础语法学与练】第8课 rememberSaveable,页面旋转/系统重建保留状态
android·学习·ui·kotlin·android jetpack
>Andre<6 小时前
UFS5.0标准中文全译·卷一:范围、术语与架构
android·linux·嵌入式硬件
事圆则缓7 小时前
Java 8 Lambda、Stream、Optional 与 Android 边界:从回调语法到运行时兼容
android·java
mmsx7 小时前
Android 地图十万要素不卡顿:空间网格 + 渐进式加载的移动端实践
android·大数据·opengl
寺中人8 小时前
Git 版本控制完全入门指南:从安装到实战,提交 + 分支 + 协作 + 冲突解决全拆解
git·开发工具·版本控制·团队协作·代码管理
Godikov9 小时前
Android 工业终端保活实战:前台服务 + 开机自启 + 更新自启的三重保障
android
字节暗面9 小时前
SO加固强度怎么量化?腾讯ACE与FairGuard静态分析实测
android·逆向