diff options
author | Junio C Hamano <gitster@pobox.com> | 2008-11-16 00:48:59 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-11-16 00:48:59 -0800 |
commit | 47a792539a48327e62c594f2befb5c5d1e58c0f2 (patch) | |
tree | 2a4cc395a0686640abea8b3fe75ff3667b7e0475 /wt-status.c | |
parent | 8c4021abfd170278d1a3431e2777bedd0c01fbb1 (diff) | |
parent | 1324fb6f161ee516eb4c597880847003a42c0c5d (diff) | |
download | git-47a792539a48327e62c594f2befb5c5d1e58c0f2.tar.gz |
Merge branch 'jk/commit-v-strip'
* jk/commit-v-strip:
status: show "-v" diff even for initial commit
wt-status: refactor initial commit printing
define empty tree sha1 as a macro
Diffstat (limited to 'wt-status.c')
-rw-r--r-- | wt-status.c | 33 |
1 files changed, 6 insertions, 27 deletions
diff --git a/wt-status.c b/wt-status.c index 6a7645ed86..3edae43ce9 100644 --- a/wt-status.c +++ b/wt-status.c @@ -185,31 +185,12 @@ static void wt_status_print_changed_cb(struct diff_queue_struct *q, wt_status_print_trailer(s); } -static void wt_status_print_initial(struct wt_status *s) -{ - int i; - struct strbuf buf = STRBUF_INIT; - - if (active_nr) { - s->commitable = 1; - wt_status_print_cached_header(s); - } - for (i = 0; i < active_nr; i++) { - color_fprintf(s->fp, color(WT_STATUS_HEADER), "#\t"); - color_fprintf_ln(s->fp, color(WT_STATUS_UPDATED), "new file: %s", - quote_path(active_cache[i]->name, -1, - &buf, s->prefix)); - } - if (active_nr) - wt_status_print_trailer(s); - strbuf_release(&buf); -} - static void wt_status_print_updated(struct wt_status *s) { struct rev_info rev; init_revisions(&rev, NULL); - setup_revisions(0, NULL, &rev, s->reference); + setup_revisions(0, NULL, &rev, + s->is_initial ? EMPTY_TREE_SHA1_HEX : s->reference); rev.diffopt.output_format |= DIFF_FORMAT_CALLBACK; rev.diffopt.format_callback = wt_status_print_updated_cb; rev.diffopt.format_callback_data = s; @@ -298,7 +279,8 @@ static void wt_status_print_verbose(struct wt_status *s) struct rev_info rev; init_revisions(&rev, NULL); - setup_revisions(0, NULL, &rev, s->reference); + setup_revisions(0, NULL, &rev, + s->is_initial ? EMPTY_TREE_SHA1_HEX : s->reference); rev.diffopt.output_format |= DIFF_FORMAT_PATCH; rev.diffopt.detect_rename = 1; DIFF_OPT_SET(&rev.diffopt, ALLOW_TEXTCONV); @@ -360,12 +342,9 @@ void wt_status_print(struct wt_status *s) color_fprintf_ln(s->fp, color(WT_STATUS_HEADER), "#"); color_fprintf_ln(s->fp, color(WT_STATUS_HEADER), "# Initial commit"); color_fprintf_ln(s->fp, color(WT_STATUS_HEADER), "#"); - wt_status_print_initial(s); - } - else { - wt_status_print_updated(s); } + wt_status_print_updated(s); wt_status_print_changed(s); if (wt_status_submodule_summary) wt_status_print_submodule_summary(s); @@ -374,7 +353,7 @@ void wt_status_print(struct wt_status *s) else if (s->commitable) fprintf(s->fp, "# Untracked files not listed (use -u option to show untracked files)\n"); - if (s->verbose && !s->is_initial) + if (s->verbose) wt_status_print_verbose(s); if (!s->commitable) { if (s->amend) |