Skip to content

Be more forgiving of missing objects #2063

@technoweenie

Description

@technoweenie

Currently, if a repository is missing LFS data for older versions of files, it's impossible to push it to a new endpoint. I think the git lfs push and pre-push commands should spew errors if it can't find an object locally, without halting the push operation early. The commands should still return with a non-zero exit code, but at least the other objects have a chance to be uploaded. This allows repositories with missing objects to be easily fixed without resorting to git filter-branch.

This is also a small baby step towards Object Expiration (as described in #1101 (comment)), which would let repository owners mark certain OIDs as known missing objects. By marking an object as expired, the push and pre-push commands will just skip the upload attempt, so the commands can return successfully.

Finally, double check that upload retries reset the progress meter properly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions