Hi, I'm happy to report that I have found a reasonable solution to the problem: see [5/6]. The larger problem still persists: in my opinion, b397ea4 takes the wrong approach to the problem it is attempting to solve; nobody cares _how_ I got to a detached HEAD state; what is important is that I'm stuck in such a state and need useful information. The correct approach, in my opinion, is already taken by my prompt: use git describe. artagnon|checkout-dash=$ git checkout @~1 artagnon|(checkout-dash~1):~/src/git$ Now compare this with the approach taken by the patch: artagnon|(checkout-dash~1):~/src/git$ git status # HEAD detached at 7aa7992 nothing added to commit but untracked files present Completely useless. Unfortunately, it is too late to revert b397ea4, as too much stuff already depends on it now (see builtin/branch.c for example). Reworking the code to use describe is not an easy task at all: describe has no exposed API, and is polluted with die() statements. Nevertheless, it can be a fruitful exercise for someone who is willing to take on the challenge. Thanks. Ramkumar Ramachandra (6): t/checkout-last: checkout - doesn't work after rebase rebase: prepare to write reflog message for checkout rebase -i: prepare to write reflog message for checkout wt-status: remove unused field in grab_1st_switch_cbdata status: do not depend on flaky reflog messages checkout: respect GIT_REFLOG_ACTION builtin/checkout.c | 11 ++++++++--- git-rebase--interactive.sh | 2 ++ git-rebase.sh | 2 ++ t/t2012-checkout-last.sh | 16 ++++++++++++++++ t/t7512-status-help.sh | 37 +++++++++++++++++-------------------- wt-status.c | 13 ++++--------- 6 files changed, 49 insertions(+), 32 deletions(-) -- 1.8.3.1.384.g7cec0b4 -- 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