Updated status to show 'Not currently on any branch' in red
This provides additional warning to users when attempting to commit to a detached HEAD. It is configurable in color.status.nobranch. Signed-off-by: Chris Parsons <chris@edendevelopment.co.uk> Acked-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
f9189cf8f2
commit
950ce2e22d
@ -523,8 +523,10 @@ color.status.<slot>::
|
|||||||
one of `header` (the header text of the status message),
|
one of `header` (the header text of the status message),
|
||||||
`added` or `updated` (files which are added but not committed),
|
`added` or `updated` (files which are added but not committed),
|
||||||
`changed` (files which are changed but not added in the index),
|
`changed` (files which are changed but not added in the index),
|
||||||
or `untracked` (files which are not tracked by git). The values of
|
`untracked` (files which are not tracked by git), or
|
||||||
these variables may be specified as in color.branch.<slot>.
|
`nobranch` (the color the 'no branch' warning is shown in, defaulting
|
||||||
|
to red). The values of these variables may be specified as in
|
||||||
|
color.branch.<slot>.
|
||||||
|
|
||||||
commit.template::
|
commit.template::
|
||||||
Specify a file to use as the template for new commit messages.
|
Specify a file to use as the template for new commit messages.
|
||||||
|
11
wt-status.c
11
wt-status.c
@ -18,6 +18,7 @@ static char wt_status_colors[][COLOR_MAXLEN] = {
|
|||||||
"\033[32m", /* WT_STATUS_UPDATED: green */
|
"\033[32m", /* WT_STATUS_UPDATED: green */
|
||||||
"\033[31m", /* WT_STATUS_CHANGED: red */
|
"\033[31m", /* WT_STATUS_CHANGED: red */
|
||||||
"\033[31m", /* WT_STATUS_UNTRACKED: red */
|
"\033[31m", /* WT_STATUS_UNTRACKED: red */
|
||||||
|
"\033[31m", /* WT_STATUS_NOBRANCH: red */
|
||||||
};
|
};
|
||||||
|
|
||||||
static const char use_add_msg[] =
|
static const char use_add_msg[] =
|
||||||
@ -38,6 +39,8 @@ static int parse_status_slot(const char *var, int offset)
|
|||||||
return WT_STATUS_CHANGED;
|
return WT_STATUS_CHANGED;
|
||||||
if (!strcasecmp(var+offset, "untracked"))
|
if (!strcasecmp(var+offset, "untracked"))
|
||||||
return WT_STATUS_UNTRACKED;
|
return WT_STATUS_UNTRACKED;
|
||||||
|
if (!strcasecmp(var+offset, "nobranch"))
|
||||||
|
return WT_STATUS_NOBRANCH;
|
||||||
die("bad config variable '%s'", var);
|
die("bad config variable '%s'", var);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -314,8 +317,9 @@ static void wt_status_print_verbose(struct wt_status *s)
|
|||||||
void wt_status_print(struct wt_status *s)
|
void wt_status_print(struct wt_status *s)
|
||||||
{
|
{
|
||||||
unsigned char sha1[20];
|
unsigned char sha1[20];
|
||||||
s->is_initial = get_sha1(s->reference, sha1) ? 1 : 0;
|
const char *branch_color = color(WT_STATUS_HEADER);
|
||||||
|
|
||||||
|
s->is_initial = get_sha1(s->reference, sha1) ? 1 : 0;
|
||||||
if (s->branch) {
|
if (s->branch) {
|
||||||
const char *on_what = "On branch ";
|
const char *on_what = "On branch ";
|
||||||
const char *branch_name = s->branch;
|
const char *branch_name = s->branch;
|
||||||
@ -323,10 +327,11 @@ void wt_status_print(struct wt_status *s)
|
|||||||
branch_name += 11;
|
branch_name += 11;
|
||||||
else if (!strcmp(branch_name, "HEAD")) {
|
else if (!strcmp(branch_name, "HEAD")) {
|
||||||
branch_name = "";
|
branch_name = "";
|
||||||
|
branch_color = color(WT_STATUS_NOBRANCH);
|
||||||
on_what = "Not currently on any branch.";
|
on_what = "Not currently on any branch.";
|
||||||
}
|
}
|
||||||
color_fprintf_ln(s->fp, color(WT_STATUS_HEADER),
|
color_fprintf(s->fp, color(WT_STATUS_HEADER), "# ");
|
||||||
"# %s%s", on_what, branch_name);
|
color_fprintf_ln(s->fp, branch_color, "%s%s", on_what, branch_name);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (s->is_initial) {
|
if (s->is_initial) {
|
||||||
|
@ -8,6 +8,7 @@ enum color_wt_status {
|
|||||||
WT_STATUS_UPDATED,
|
WT_STATUS_UPDATED,
|
||||||
WT_STATUS_CHANGED,
|
WT_STATUS_CHANGED,
|
||||||
WT_STATUS_UNTRACKED,
|
WT_STATUS_UNTRACKED,
|
||||||
|
WT_STATUS_NOBRANCH,
|
||||||
};
|
};
|
||||||
|
|
||||||
struct wt_status {
|
struct wt_status {
|
||||||
|
Loading…
Reference in New Issue
Block a user