[PATCH] git-status: wording update to deal with deleted files.
- From
Junio C Hamano <junkio@cox.net>
- Date
- Jan 11, 2007, 23:37 UTC
- Message-ID
- <7vsleh16ey.fsf_-_@assigned-by-dhcp.cox.net>
- In-Reply-To
- <7vejq12nlu.fsf@assigned-by-dhcp.cox.net>
If you do:
$ /bin/rm foo $ git status
we used to say "git add ... to add content to commit". But suggsting "git add" to record the deletion of a file is simply insane.
So this rewords various things:
- The section header is the old "Changed but not updated", instead of "Changed but not added";
- Suggestion is "git add ... to update what will be committed", instead of "... to add content to commit";
- If there are removed paths, the above suggestion becomes "git add/rm ... to update what will be committed";
- For untracked files, the suggestion is "git add ... to include in what will be committed".
Signed-off-by: Junio C Hamano <junkio@cox.net> ---
* This needs the previous "git rm" update to make sense. Currently "/bin/rm foo ; git rm foo" would fail because the latter cannot remove foo (it gets "No such file or directory").
wt-status.c | 19 ++++++++++++++++--- 1 files changed, 16 insertions(+), 3 deletions(-)
diff --git a/wt-status.c b/wt-status.c index 1dc2fdc..a849951 100644 --- a/wt-status.c +++ b/wt-status.c @@ -15,7 +15,13 @@ static char wt_status_colors[][COLOR_MAXLEN] = { "\033[31m", /* WT_STATUS_CHANGED: red */ "\033[31m", /* WT_STATUS_UNTRACKED: red */ }; -static const char* use_add_msg = "use \"git add <file>...\" to incrementally add content to commit"; + +static const char use_add_msg[] = +"use \"git add <file>...\" to update what will be committed"; +static const char use_add_rm_msg[] = +"use \"git add/rm <file>...\" to update what will be committed"; +static const char use_add_to_include_msg[] = +"use \"git add <file>...\" to include in what will be committed"; static int parse_status_slot(const char *var, int offset) { @@ -177,8 +183,14 @@ static void wt_status_print_changed_cb(struct diff_queue_struct *q, struct wt_status *s = data; int i; if (q->nr) { + const char *msg = use_add_msg; s->workdir_dirty = 1; - wt_status_print_header("Changed but not added", use_add_msg); + for (i = 0; i < q->nr; i++) + if (q->queue[i]->status == DIFF_STATUS_DELETED) { + msg = use_add_rm_msg; + break; + } + wt_status_print_header("Changed but not updated", msg); } for (i = 0; i < q->nr; i++) wt_status_print_filepair(WT_STATUS_CHANGED, q->queue[i]); @@ -265,7 +277,8 @@ static void wt_status_print_untracked(struct wt_status *s) } if (!shown_header) { s->workdir_untracked = 1; - wt_status_print_header("Untracked files", use_add_msg); + wt_status_print_header("Untracked files", + use_add_to_include_msg); shown_header = 1; } color_printf(color(WT_STATUS_HEADER), "#\t");
-- 1.4.4.4.gb8a1