Everything looks normal using the commands you described, and it does appear to only affect status:
~/test (master)$ type git git is hashed (/usr/local/bin/git) ~/test (master)$ git config --list core.repositoryformatversion=0 core.filemode=true core.bare=false core.logallrefupdates=true core.ignorecase=true core.precomposeunicode=true ~/test (master)$ GIT_TRACE=1 git status -z 08:59:11.806197 git.c:348 trace: built-in: git 'status' '-z' ~/test (master)$ git log --oneline -1 -z | hexdump -C 00000000 35 31 35 39 30 65 30 20 49 6e 69 74 69 61 6c 20 |51590e0 Initial | 00000010 63 6f 6d 6d 69 74 2e 00 |commit..| 00000018 ~/test (master)$ touch c d ~/test (master)$ git status -z | hexdump -C 00000000 3f 3f 20 63 3f 3f 20 64 |?? c?? d| 00000008 This is again with 2.4.3 from git-scm.com. N�����r��y����b�X��ǧv�^�){.n�+����ا���ܨ}���Ơz�&j:+v�������zZ+��+zf���h���~����i���z��w���?�����&�)ߢf