On Thu, May 10, 2012 at 09:04:57PM +0700, Nguyen Thai Ngoc Duy wrote: > Thanks Jeff and Junio for all the comments. This is basically what you > (and I) agree in v1's thread. The first patch is a new one, to avoid > git-notes from converting everything to blobs. I don't restrict the > "show" case either because git-notes uses "git show", which is > capable of displaying all kinds of objects. Nice, this is much better than the previous round. I was surprised by the "git show" thing you mentioned, because I checked before that "git notes add -C HEAD^{tree}; git notes show" generated garbage. But the problem is that "-C $tree" was more broken than we realized. It actually copied the tree contents into a blob object, giving it a new sha1: $ git rev-parse HEAD^{tree} f799843170cdddbbdfec446e934bbccf94e0d2a7 $ git notes add -C HEAD^{tree} $ git notes list HEAD 587521811b7a5b84ed7cb48d11f9321ddcefd337 So it really was totally useless, and nobody could possibly have been using it to store a real tree object, experimental or otherwise. But I still like these patches better than just disallowing it, because they allow people to experiment with the idea. It's a little odd that we rewrite the object in the "-C" case at all; we should never even need to open the object. I guess it is just to make the code paths between "-c" and "-C" simpler. -Peff -- 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