Re: [PATCH/RFC] revision: Show friendlier message.
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:54:10
Junio C Hamano [off-list ref] writes:
Leila Muhtasib [off-list ref] writes:quoted
% mkdir test % cd test % git init Initialized empty Git repository in .git/ % git log fatal: bad default revision 'HEAD'I agree that the message, while it is technically correct and does not deserve to be called a bug, can be made more friendly. But setup_revisions() is a very low level routine that is used by many plumbing commands, and it is a horrible layering violation to tweak its behaviour based on argv[0] and also it is too inflexible hack as a solution. For example, don't you want to give a different error message for "git log HEAD" with an explicit "HEAD" from the command line? Would you add a similar support for a command that is not "log" by adding yet another strcmp() here? Wouldn't it be a more reasonable alternative solution if you do this: 1. Check if HEAD points at a commit _before_ setting opt->def to it in "git log" (and other end-user facing programs in the "log" family, possibly in cmd_log_init_finish() if that function is not called by a program where the current message should not change), and do _NOT_ set opt->def to it;
The last part of the paragraph should read: ... and do _NOT_ set opt->def to it if HEAD does not point at a commit.