commit
a1efa582eb
8
docs/proposals/README.md
Normal file
8
docs/proposals/README.md
Normal file
@ -0,0 +1,8 @@
|
||||
# Git LFS Proposals
|
||||
|
||||
This directory contains high level proposals for future Git LFS features.
|
||||
Inclusion here does not guarantee when or if a feature will make it in to Git
|
||||
LFS. It doesn't even guarantee that the specifics won't change.
|
||||
|
||||
Everyone is welcome to submit their own proposal as a markdown file in a
|
||||
pull request for discussion.
|
@ -69,12 +69,12 @@ the previous section.
|
||||
|
||||
* Git passes the original contents of the file to LFS clean over STDIN
|
||||
* LFS reads those bytes and calculates the original SHA-256 signature as it does so
|
||||
* LFS streams the bytes to STDIN of lfs-extension.foo.clean, which is expected to write
|
||||
* LFS streams the bytes to STDIN of lfs-ext.foo.clean, which is expected to write
|
||||
those bytes, modified or not, to its STDOUT
|
||||
* LFS reads the bytes from STDOUT of lfs-extension.foo.clean, calculates the SHA-256
|
||||
signature, and writes them to STDIN of lfs-extension.bar.clean, which then writes those
|
||||
* LFS reads the bytes from STDOUT of lfs-ext.foo.clean, calculates the SHA-256
|
||||
signature, and writes them to STDIN of lfs-ext.bar.clean, which then writes those
|
||||
bytes, modified or not, to its STDOUT
|
||||
* LFS reads the bytes from STDOUT of lfs-extension.bar.clean, calculates the SHA-256
|
||||
* LFS reads the bytes from STDOUT of lfs-ext.bar.clean, calculates the SHA-256
|
||||
signature, and writes the bytes to a temp flie
|
||||
* When finished, LFS atomically moves the temp file into .git/lfs/objects, as before
|
||||
* LFS generates the pointer file, with some changes:
|
||||
@ -135,12 +135,12 @@ not, the bytes would just be passed through to STDOUT.
|
||||
determines that extensions foo and bar both processed the file, in that order.
|
||||
* LFS uses the value of the oid key to find the blob in the .git/lfs/objects folder, or
|
||||
download from the server as needed
|
||||
* LFS writes the contents of the blob to STDIN of lfs-extension.bar.smudge, which
|
||||
* LFS writes the contents of the blob to STDIN of lfs-ext.bar.smudge, which
|
||||
modifies them as needed and writes them to its STDOUT
|
||||
* LFS reads the bytes from STDOUT of lfs-extension.bar.smudge, calculates the SHA-256
|
||||
signature, and writes the bytes to STDIN of lfs-extension.foo.smudge, which modifies them
|
||||
* LFS reads the bytes from STDOUT of lfs-ext.bar.smudge, calculates the SHA-256
|
||||
signature, and writes the bytes to STDIN of lfs-ext.foo.smudge, which modifies them
|
||||
as needed and writes to them its STDOUT
|
||||
* LFS reads the bytes from STDOUT of lfs-extension.foo.smudge, calculates the SHA-256
|
||||
* LFS reads the bytes from STDOUT of lfs-ext.foo.smudge, calculates the SHA-256
|
||||
signature, and writes the bytes to its own STDOUT
|
||||
* At the end, ensure that the hashes calculated on the outputs of foo and bar match their
|
||||
corresponding input hashes from the pointer file. If not, write a descriptive error
|
||||
|
Loading…
Reference in New Issue
Block a user