Merge branch 'md/sort-detached-head-first'

"git branch --list" learned to always output the detached HEAD as
the first item (when the HEAD is detached, of course), regardless
of the locale.

* md/sort-detached-head-first:
  ref-filter: sort detached HEAD lines firstly
This commit is contained in:
Junio C Hamano
2019-07-09 15:25:42 -07:00
3 changed files with 21 additions and 18 deletions

View File

@ -1471,35 +1471,35 @@ char *get_head_description(void)
struct wt_status_state state;
memset(&state, 0, sizeof(state));
wt_status_get_state(the_repository, &state, 1);
/*
* The ( character must be hard-coded and not part of a localizable
* string, since the description is used as a sort key and compared
* with ref names.
*/
strbuf_addch(&desc, '(');
if (state.rebase_in_progress ||
state.rebase_interactive_in_progress) {
if (state.branch)
strbuf_addf(&desc, _("(no branch, rebasing %s)"),
strbuf_addf(&desc, _("no branch, rebasing %s"),
state.branch);
else
strbuf_addf(&desc, _("(no branch, rebasing detached HEAD %s)"),
strbuf_addf(&desc, _("no branch, rebasing detached HEAD %s"),
state.detached_from);
} else if (state.bisect_in_progress)
strbuf_addf(&desc, _("(no branch, bisect started on %s)"),
strbuf_addf(&desc, _("no branch, bisect started on %s"),
state.branch);
else if (state.detached_from) {
if (state.detached_at)
/*
* TRANSLATORS: make sure this matches "HEAD
* detached at " in wt-status.c
*/
strbuf_addf(&desc, _("(HEAD detached at %s)"),
state.detached_from);
strbuf_addstr(&desc, HEAD_DETACHED_AT);
else
/*
* TRANSLATORS: make sure this matches "HEAD
* detached from " in wt-status.c
*/
strbuf_addf(&desc, _("(HEAD detached from %s)"),
state.detached_from);
strbuf_addstr(&desc, HEAD_DETACHED_FROM);
strbuf_addstr(&desc, state.detached_from);
}
else
strbuf_addstr(&desc, _("(no branch)"));
strbuf_addstr(&desc, _("no branch"));
strbuf_addch(&desc, ')');
free(state.branch);
free(state.onto);
free(state.detached_from);