Expand description
HTTP client for the git-lfs batch and locking APIs.
See docs/api/ for the wire-protocol specification.
Scope is deliberately narrow: this crate handles JSON request/response
against the LFS server. Concurrency, retries, and the actual byte
transfer against action URLs live in git-lfs-transfer. Credential
resolution lives in git-lfs-creds. Server URL discovery from a git
remote lives in git-lfs-git.
Structs§
- Action
- One concrete HTTP request the transfer adapter should make.
- Actions
- The set of next-step actions the server returned for one object.
- Batch
Request - A POST body for
/objects/batch. - Batch
Response - Response body from
/objects/batch. - Client
- HTTP client for the git-lfs API endpoints.
- Create
Lock Request - POST
/locksbody. - Delete
Lock Request - List
Locks Filter - Filter for
GET /locks. All fields are optional; absent ones are not sent on the wire. - Lock
- A lock record returned by the locking API.
- Lock
List - Object
Error - Per-object error inside a batch response.
- Object
Result - Per-object result inside a batch response. Either
actionsorerroris populated; both being absent means “server already has this object” (an upload no-op). - Object
Spec - One object the client wants to transfer.
- Owner
- User identity attached to a lock by the server.
- Ref
- A server refspec, used by both batch and locking requests for auth schemes that take the ref into account (added in LFS v2.4).
- Server
Error - The standard error body returned by the LFS server for non-2xx responses.
- Verify
Locks Request - Verify
Locks Response
Enums§
- ApiError
- Errors returned by the API client.
- Auth
- Authentication to attach to API requests.
- Create
Lock Error - Errors specific to
Client::create_lock. - Operation
- Operation requested from the batch endpoint.