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
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
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.
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(-)
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html