Skip to content
Latchkey

Git LFS "object does not exist" in CI

The pointer file references an LFS object the server cannot return. The object was never uploaded, was garbage-collected, or the repo points at an LFS store that does not hold it.

What this error means

An LFS pull or checkout fails with [<oid>] Object does not exist on the server or a 404 from the LFS batch API. Some LFS files download; one or more are missing.

git
Error downloading object: assets/model.bin (a1b2c3): Smudge error:
Error downloading assets/model.bin: [a1b2c3] Object does not exist on the server: [404] Object does not exist on the server

Common causes

Object never pushed

A commit added a pointer but the corresponding LFS object was not pushed (e.g. push.followtags or a partial push), so the server has the pointer reference but not the data.

Object pruned or migrated away

LFS storage was cleaned or the file was migrated out, leaving dangling pointers in history.

Wrong LFS endpoint

The repo is configured against an LFS store that does not hold this object (a mirror or moved remote).

How to fix it

Confirm what the server actually has

  1. List the LFS objects referenced and their fetch status.
  2. Identify the missing OID.
Terminal
git lfs ls-files --all
git lfs fetch --all

Re-push or skip the missing object

  1. From a clone that still has the file, push the missing LFS objects.
  2. If the object is gone for good, remove or replace the dangling pointer.
Terminal
git lfs push origin --all

How to prevent it

  • Verify LFS objects are fully pushed (git lfs push --all) before relying on them in CI, and avoid pruning LFS storage that history still references.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →