Am 27.10.21 um 01:58 schrieb Bryan Turner: > $ /usr/bin/git rev-parse refs/heads/develop > 28a05ce2e3079afcb32e4f1777b42971d7933a91 > $ /usr/bin/git rev-parse refs/heads/develop:path/to/parent/file > cc10f4b278086325aab2f95df97c807c7c6cd75e > > So it looks like rev-parse and cat-file --batch-check both exhibit the > same behavior. > > I also had them expand their cat-file --batch-check to include another > file in the same "path/to/parent" directory: > $ echo 'refs/heads/develop > refs/heads/develop:path/to/parent/sibling > refs/heads/develop:path/to/parent/file' | /usr/bin/git cat-file --batch-check > 28a05ce2e3079afcb32e4f1777b42971d7933a91 commit 259 > 2bfe7b4b7c7cdeb9653801d99b65dfefe5780dda blob 897 > cc10f4b278086325aab2f95df97c807c7c6cd75e commit 330 > > So the "sibling" file in the same directory comes out as a "blob", as expected. > > They also ran an ls-tree for the directory without any globs: > # /usr/bin/git ls-tree refs/heads/develop:path/to/parent > 100644 blob 2bfe7b4b7c7cdeb9653801d99b65dfefe5780dda sibling > 100644 blob 4c8d566ed80a1554a059b97f7cd533a55bbd2ea8 file Just a shot in the dark: what happens when you use /usr/bin/git --no-replace-objects? -- Hannes