Here is how to reproduce the bug: git init mkdir prefix && touch prefix/a && git add prefix/a mkdir prefixdir && touch prefixdir/b && git add prefixdir/b git commit -a -m "If -r is not given, ls-tree should not show files in subdirs." git ls-tree --name-only HEAD prefix # works as expected git ls-tree --name-only HEAD prefixdir # works as expected git ls-tree --name-only HEAD prefix prefixdir # shows file, not dir The output of the last command is prefix/a prefixdir But it should be prefix prefixdir The patch fixes the problem. -- 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