I've noticed a series of about 20 commits in the HardenedBSD repository fairly reliably produce garbage names from git name-rev - usually fragments of another commit, sometimes unprintable nonsense. Sometimes it works just fine... Here's a quick demo showing how to reproduce the problem: % uname -mrs FreeBSD 13.0-RELEASE-p11 amd64 % git --version git version 2.35.2 % git clone --bare --mirror https://github.com/HardenedBSD/hardenedBSD.git % cd hardenedBSD.git % git rev-list --branches=\* | git name-rev --stdin --refs=heads/\* | egrep -v '^[0-9a-f]{40}( \([a-zA-Z0-9_/.^~-]+\))?$' 3eb67b534cab6a78b44b13e4323fd60353003089 (y: marcel MFC after: 3 days Relnotes: yes Sponsored by: ScaleEngine Inc. Differential Revision: https://reviews.freebsd.org/D3065 ~3) 3ac660fc0c6eb0f876972e7e415c89f1ebed1939 (y: marcel MFC after: 3 days Relnotes: yes Sponsored by: ScaleEngine Inc. Differential Revision: https://reviews.freebsd.org/D3065 ~4) <continues> Here's the result of another run, which includes all the affected hashes - the name here presumably also has some non-printable garbage not shown: 3eb67b534cab6a78b44b13e4323fd60353003089 (H~3) 3ac660fc0c6eb0f876972e7e415c89f1ebed1939 (H~4) 888a2df901616fb2900279c75580de3d4bc93278 (H~5) 58b9ad4f2e737ff922ff49ae564a32ee94c0ff6b (H~6) 59181d461b8d8c45144dc1856fa94da8a197b2ee (H~7) 9dd8627f2d53008b73ed93f92b71e24e8e319d93 (H~8) 3e1340e9928c7398551d3192a08acb678defc75e (H~9) 6ed06b88b912202db5b9d28b281ddbf4a1b0652a (H~10) 03b1b642f686502c128ac78ccf9dba7605f2aedf (H~11) e7861fb764975a2c5f2f558b0800656679959624 (H~12) 4c28d4a51469dbb69bac67ec3b1c3a3d114ddf80 (H~13) 9ad0ed2485e40adce13b3900230640db66a38311 (H~14) 88dbdc409320e2785be4b1fcf0392999e3ab4374 (H~15) c09997f49b7ca54f8d7305be57a037a294c32780 (H~16) 1f95262a4cda63a14016278f8ccc42c217858c36 (H~17) 50fec7a08d222bfd97499afa1c4000322c2280ff (H~18) df3a215e38869117f8297e0910e08ae95eea5a59 (H~19) cc81f4cf69d01cfc329827dbbc44da219bdddc05 (H~20) 5a7f7f242655f04a42e152d2c2f45819e9de4376 (H~21) 39cb585f2d4d4db10a282b06d9f7a9f07b658804 (H~22) 1264cc1d38cb1f1f03e34e395b33011108945638 (H~23) 98883cdf600f4aa3d5aba1d60248000132b6ad58 (H~24) 541df39729d32a70ba4da5184a8e82aaa3c87ae5 (H~25) 288fdc199a6936caab9d89d7deeb9b2bcf3b1f68 (H~26) Passing these commits into name-rev as arguments finds them under hardened/current/relro~199^2 git fsck --full does not reveal or fix anything, and the problem also persists with a build from source from the next branch. I was unable to reproduce on an Ubuntu machine with 2.32.0, so I used that as a starting point for bisection and landed here: 3656f842789d25d75da41c6c029470052a573b54 name-rev: prefer shorter names over following merges -- Thomas 'Freaky' Hurst http://hur.st/