It sounds like the FSF would disagree with the "except blobs abcdef1 and def2abc" bit. The user is still "obligated to refer to that nonfree code" even if it's just by SHA1.
Posted Jan 8, 2011 3:41 UTC (Sat) by gjmarter (subscriber, #5777)
[Link]
It seems plausible to create a git that does not store certain blobs that it claims to have. What seems more difficult is to have a git which would alter the trees so that the offending filename is not listed. How would you do that and still be able to verify the integrity of the tree against the SHA1?
I think the filename in the tree is even a bigger concern than the blob references.