Skip to content
Recovery

When it is genuinely too late

Garbage collection is real, and it is the end of the line.

Everything in this track has relied on unreferenced objects surviving. `git gc --prune=now` is where that stops being true: it expires the reflogs and deletes every object nothing can reach.

After that there is no reflog entry to name the commit, no dangling object for `fsck` to find, and no way back. This is the one drill designed to end with the work gone.

In practice gc runs on its own occasionally, with a two-week grace period. That is your window — generous, but not unlimited.

Commands in this lesson

git gc
Delete unreachable objects — after this, they are genuinely gone
git fsck
Check the object store, and report objects nothing points at
No account, no backend. Everything you do stays in this browser.liter8.sh