Now that delete_refs() accepts a reflog message, pass the user-provided message to delete_refs() rather than silently dropping it. The doesn't matter for the deleted ref's log because the log is deleted along with the ref, but this entry will show up in HEAD's reflog when deleting a checked out branch. Signed-off-by: Kyle Meyer <kyle@xxxxxxxxxx> --- I'm not sure if the test here (or in the next patch) is worth including. builtin/update-ref.c | 2 +- t/t1400-update-ref.sh | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/builtin/update-ref.c b/builtin/update-ref.c index a41f9adf1..f642acc22 100644 --- a/builtin/update-ref.c +++ b/builtin/update-ref.c @@ -435,7 +435,7 @@ int cmd_update_ref(int argc, const char **argv, const char *prefix) */ return delete_ref(refname, (oldval && !is_null_sha1(oldsha1)) ? oldsha1 : NULL, - flags, NULL); + flags, msg); else return update_ref(msg, refname, sha1, oldval ? oldsha1 : NULL, flags | create_reflog_flag, diff --git a/t/t1400-update-ref.sh b/t/t1400-update-ref.sh index b0ffc0b57..65918d984 100755 --- a/t/t1400-update-ref.sh +++ b/t/t1400-update-ref.sh @@ -85,6 +85,15 @@ test_expect_success "delete $m (by HEAD)" ' ' rm -f .git/$m +test_expect_success "deleting current branch adds message to HEAD's log" ' + git update-ref $m $A && + git symbolic-ref HEAD $m && + git update-ref -mdelmsg -d $m && + ! test -f .git/$m && + grep "delmsg$" .git/logs/HEAD >/dev/null +' +rm -f .git/$m + test_expect_success 'update-ref does not create reflogs by default' ' test_when_finished "git update-ref -d $outside" && git update-ref $outside $A && -- 2.11.1