Current `next`: [spearce@pb15 git]$ git cat-file commit v1.4.1 tree 34c8f9c263c1c20592d3f56c3d86bea322577155 parent 6631c73685bea3c6300938f4900db0d0c6bee457 author Linus Torvalds <torvalds@xxxxxxxx> 1151691633 -0700 committer Junio C Hamano <junkio@xxxxxxx> 1151803695 -0700 ... Uhhh, that's a tag. I know it is: [spearce@pb15 git]$ git cat-file tag v1.4.1 object 0556a11a0df6b4119e01aa77dfb795561e62eb34 type commit tag v1.4.1 tagger Junio C Hamano <junkio@xxxxxxx> 1151818415 -0700 ... And I know its not a tree: [spearce@pb15 git]$ git cat-file tree v1.4.1 100644 .gitignore{?MX~Ä?????y?v?X?u100644 COPYINGo?... So it better not be a blob: [spearce@pb15 git]$ git cat-file blob v1.4.1 fatal: git-cat-file v1.4.1: bad file What the heck is going on? Since when did git cat-file happily consider a tag to be a tag, a commit and a tree? Its that intentional that we're peeling back the object to the requested type? -- Shawn. - : 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