Re: git-archive and tar options
From: Jakub Narebski <hidden>
Date: 2016-06-15 22:51:35
Jeff King [off-list ref] writes:
On Thu, Jul 14, 2011 at 07:45:07PM +0200, René Scharfe wrote:quoted
quoted
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.That's a good idea to increase consistency, as there shouldn't really be a difference in output between the two subdirectory syntaxes.The patch to do this is pretty tiny. See below. There are a few issues, though: 1. I think this is probably the right thing to do, and most people will be happy about it. But I guess I can see an argument that the commit-id should not be there, as the subtree does not represent that commit. IOW, if you assume the commit-id in the output means "by the way, this came from commit X", this change is a good thing. If you assume it means "this is the tree from commit X", then it's not. I have no idea how people use it. I never have, but I always assumed the use case was "I have this random tarball. Where did it come from?".
Perhaps we should embed '<commit-id>:<subtree>' instead in pax header, in that case? Or <commit-id>.<subtree> if ':' is forbidden. -- Jakub Narębski Poland