Thank you for filling out a Git bug report! Please answer the following questions to help us understand your issue. What did you do before the bug happened? (Steps to reproduce your issue) > repository in branch A git name-rev $(git rev-parse HEAD) --name-only > returns A git checkout B git name-rev $(git rev-parse HEAD) --name-only What did you expect to happen? (Expected behavior) It should return B What happened instead? (Actual behavior) It returns A What's different between what you expected and what actually happened? git rev-parse does not seem to update. Same is happenning with git rev-parse @{-1} Anything else you want to add: git version 2.34.1 I recently migrated to ubuntu 22. In ubuntu 18 with previous git version is was working as expected. Please review the rest of the bug report below. You can delete any lines you don't wish to share. [System Info] git version: git version 2.34.1 cpu: x86_64 no commit associated with this build sizeof-long: 8 sizeof-size_t: 8 shell-path: /bin/sh uname: Linux 5.19.0-38-generic #39~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Mar 17 21:16:15 UTC 2 x86_64 compiler info: gnuc: 11.3 libc info: glibc: 2.35 $SHELL (typically, interactive shell): /bin/bash [Enabled Hooks]