You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu服务器中git add占满存储,如何删除暂存文件?

如何移除git暂存区的文件并释放存储空间?

嘿,我太懂你这种手滑误加超大目录的慌张了!之前在服务器上也干过类似的事,磁盘告警弹出来的时候整个人都懵了。别担心,有两种靠谱的解决方式:

方法一:用Git命令直接处理(推荐)

这是最安全的方式,不会破坏Git仓库的完整性:

  • 如果要清空所有暂存的文件,直接在仓库根目录执行:
    git reset
    
    这个命令会把所有通过git add加到暂存区的文件退回到工作区状态,Git会自动释放用来缓存这些文件的存储空间。
  • 如果只想移除特定的超大目录,而保留其他暂存的文件,可以指定路径:
    git reset -- ./path/to/your/big-directory/
    
    把上面的路径换成你误添加的目录路径就行。

执行完上面的命令后,建议再跑一下Git的垃圾回收命令,彻底清理掉没用的缓存对象:

git gc --prune=now

--prune=now参数会立刻清理所有过期的、未被引用的Git对象,最大化释放磁盘空间。

方法二:手动找到暂存文件的存储位置(不推荐直接手动删除)

Git暂存的文件会被拆分成一个个哈希命名的对象,存储在仓库根目录下的.git/objects文件夹里。不过这些文件都是以哈希值命名的,很难直接定位到你误添加的那个大目录对应的对象,而且手动删除很容易破坏Git仓库的结构,导致仓库损坏。

所以强烈建议先用上面的Git命令处理,再用git gc清理,比手动删除安全得多。

⚠️ 注意:如果已经执行了git commit提交了误加的文件,那需要先用git reset HEAD~1回退到上一个提交(不会删除工作区文件),再按上面的步骤处理。

内容的提问来源于stack exchange,提问作者Paul

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:57:25