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

如何清理Git reflog中的reset操作记录?

可以清理Git reflog记录,无需重新克隆仓库

你完全不用重新克隆远程仓库,Git提供了直接清理reflog的方法,所有操作都是本地执行,不会影响远程仓库状态。

手动清理reflog的步骤:

  • 第一步,立即标记所有reflog条目为过期并移除:

    git reflog expire --expire=now --all
    

    若只想清理HEAD的reflog记录(而非所有分支),可将--all替换为HEAD。

  • 第二步,执行垃圾回收彻底清理无引用的对象:

    git gc --prune=now
    

    这一步会把从reflog中移除、且无任何分支/标签引用的提交对象彻底删除,释放本地仓库存储空间。

补充说明:

  • Git默认会自动清理reflog:默认情况下,Git会在30天后清理reflog中超过90天的旧条目,不急的话可以等待自动过期。
  • reflog是本地专属日志:远程仓库不会存储你的本地reflog记录,清理操作完全不会影响远程代码。

你的当前reflog记录如下:

# git reflog
3d4b95d (HEAD -> master, origin/master, origin/HEAD) HEAD@{0}: reset: moving to HEAD@{10}
99f4098 HEAD@{1}: reset: moving to HEAD@{8}
056304e HEAD@{2}: reset: moving to HEAD@{13}
47b6082 HEAD@{3}: reset: moving to HEAD@{11}
2ab9b26 HEAD@{4}: reset: moving to HEAD@{18}
b6228bd HEAD@{5}: reset: moving to HEAD@{20}
93fd78c HEAD@{6}: reset: moving to HEAD@{6}
99f4098 HEAD@{7}: reset: moving to HEAD@{1}
99f4098 HEAD@{8}: reset: moving to HEAD@{1}
99f4098 HEAD@{9}: reset: moving to 99f4098c136787ffb11c5524a334dd999cd805e9
99f4098 HEAD@{10}: reset: moving to 99f4098c136787ffb11c5524a334dd999cd805e9
3d4b95d (HEAD -> master, origin/master, origin/HEAD) HEAD@{11}: commit: bootstrap off for now
a53358d HEAD@{12}: reset: moving to HEAD~
93fd78c HEAD@{13}: commit: bootstrap off for now

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 19:40:08