yet another instance of git smudge/clean interface suck

This commit is contained in:
Joey Hess 2017-12-05 13:28:07 -04:00
parent f00770d736
commit f6d0c6de30
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38

View file

@ -0,0 +1,18 @@
[[!comment format=mdwn
username="joey"
subject="""comment 1"""
date="2017-12-05T17:24:24Z"
content="""
What happens is `git annex adjust` creates a branch and runs `git checkout`
to check it out. Then git calls `git-annex smudge` on files, and
unfortunately the git smudge interface requires that git-annex output the
whole content of the file, to stdout, which git then writes to disk.
So yes, this doesn't use reflinks, but it's worse than that, a better
interface would let git-annex simply move or hard-link the file into place,
even on filesystems not supporting reflinks.
This is discussed in detail in [[todo/smudge]]. Unfortunately it will need
a better interface in git to be addressed, and that's why v6 is still an
experimental feature.
"""]]