Junio C Hamano <gitster@xxxxxxxxx> writes: > I am not sure about "pushing" part, but the jc/fetch-raw-sha1 topic > (split from the main jc/hidden-refs topic) should allow your script, > after the client learns the set of smudged object names, to ask for > > git fetch $there $sha1_1 $sha1_2 ... Well, my out-of-band knowledge is currently the sha1 of the data contained in the blob I want, not the blob sha1 itself [1]. After experimenting with jc/hidden-refs, I think it already does exactly what I want. Specifically, I set this on the server git config uploadpack.hiderefs refs/fat so that 'git ls-remote' no longer transfers these refs. Then on the client, I do contentid=$(sha1sum thefile | cut -f1 -d \ ) blobid=$(git hash-object -w thefile) git update-ref refs/fat/$contentid $blobid .... more like this git push the-remote refs/fat/$contentid ... and later, I can fetch specific refs using git fetch the-remote refs/fat/$wanted:refs/fat/$wanted ... The client knows the desired refs out-of-band so this looks okay. It would be convenient to have '--stdin' options to 'git push' and 'git fetch'. Would a patch for that be welcome? [1] The reason for using $contentid instead of $blobid in the key here is to avoid etching the backend=git detail into the cleaned commits. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html