git-commit: squelch needless message during an empty merge
authorJunio C Hamano <gitster@pobox.com>
Thu, 13 Dec 2007 03:09:16 +0000 (19:09 -0800)
committerJunio C Hamano <gitster@pobox.com>
Thu, 13 Dec 2007 04:50:33 +0000 (20:50 -0800)
commit37d07f8f9841a29cb53a1eda6acd3804c957f0e3
tree6f450af5c78b44eefb539fd15fcd09dc30e29336
parent1e8df762b38e01685f3aa3613e2d61f73346fcbe
git-commit: squelch needless message during an empty merge

When recording a merge that conflicted and ends up in no changes after
manual resolution, commit callchain looked like this:

cmd_commit() ->
            prepare_log_message() ->
                run_status() ->
    wt_status_print()

This invocation of run_status() is asked to find out if there is a
committable change, but it unconditionally gave instructions such as
"use git-add" at the same time.  When in merge, we do allow an empty
change to be recorded, so after showing this message the code still went
ahead and made a commit.

This introduces "nowarn" parameter to run_status() to avoid these
useless messages.  If we are not allowed to create an empty commit, we
already call run_status() again in the original codepath, and the
message will be shown from that call anyway.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin-commit.c
wt-status.c
wt-status.h