On Thu, Jul 14, 2011 at 02:23:10PM -0700, Junio C Hamano wrote: > Jeff King <peff@xxxxxxxx> writes: > > > Couldn't you also do: > > > > git archive --prefix=$prefix HEAD:$subdir >my.tar > > > > ? I guess that loses the pax header with the commit sha1 in it, though, > > because you are feeding a straight tree instead of a commit. > > > > We didn't when git-archive was written, but these days we have > > get_sha1_with_context to remember incidental things about an object we > > look up. It should perhaps remember the commit (if any) we used to reach > > a treeish, and then the above command line could still insert the pax > > header. > > Why? > > The tree you are writing out that way look very different from what is > recorded in the commit object. What's the point of introducing confusion > by allowing many tarballs with different contents written from the same > commits with such tweaks all labelled with the same pax header? See my later message. I think it depends on how the embedded id is used. Is it to say "this represents the tree of this git commit"? Or is it to help people who later have a tarball and have no clue which commit it might have come from? I don't have a strong opinion either way. I've never used this feature at all. -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