git-lfs/docs/api
brian m. carlson 3f5fca598f
docs: add support for hash algorithm detection
While SHA-256 is presently considered strong, it might not always be, so
we should consider supporting other hash algorithms.  We anticipate
that, much like Git, exactly one hash algorithm will be in use at a
time per repository.  To make it easier for the client and server to
negotiate a suitable algorithm, let's add a field to designate the hash
algorithm in batch requests.

This allows the client to declare to the server the hash algorithm on
first upload, and the server can respond with the hash algorithm in use
(if it supports multiple) or a 409 response if it cannot handle that.
We expect clients and servers to both gracefully handle the absence of
this value and assume SHA-256 if not specified.
2021-09-09 16:15:43 +00:00
..
schemas docs: maintain symlinked json schemas 2017-02-13 13:25:37 -07:00
authentication.md Fix JSON comma problems in docs 2019-10-10 09:44:07 +08:00
basic-transfers.md Fix JSON comma problems in docs 2019-10-10 09:44:07 +08:00
batch.md docs: add support for hash algorithm detection 2021-09-09 16:15:43 +00:00
locking.md docs/api/locking: add an explicit <br> 2020-08-07 16:37:01 +08:00
README.md docs: add v1 of the locking api 2017-02-01 16:49:40 -07:00
server-discovery.md docs/api: add an explicit <br> 2017-04-05 16:23:45 -06:00

Git LFS API

The Git LFS client uses an HTTPS server to coordinate fetching and storing large binary objects separately from a Git server. The basic process the client goes through looks like this:

  1. Discover the LFS Server to use.
  2. Apply Authentication.
  3. Make the request. See the Batch and File Locking API sections.

Batch API

The Batch API is used to request the ability to transfer LFS objects with the LFS server.

API Specification:

Current transfer adapters include:

Experimental transfer adapters include:

File Locking API

The File Locking API is used to create, list, and delete locks, as well as verify that locks are respected in Git pushes.

API Specification: