Re: [PATCH 1/4] Minor grammatical fixes in "git log" man page
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:59:13
Jonathan Nieder [off-list ref] writes:
Jason St. John wrote:quoted
git-log.txt: grammatical fixes under --log-size optionThanks. [...]quoted
--- a/Documentation/git-log.txt +++ b/Documentation/git-log.txt@@ -56,10 +56,10 @@ Note that this affects all diff-based output types, e.g. those produced by --stat etc. --log-size:: - Before the log message print out its size in bytes. Intended + Before the log message, print out its size in bytes. Intended
Either reads well at least for me.
quoted
mainly for porcelain tools consumption. If Git is unable to - produce a valid value size is set to zero. - Note that only message is considered, if also a diff is shown + produce a valid value size, this is set to zero. + Note that only message is considered. Also, if a diff is shown, its size is not included.I have no idea what this option does, before or after the change.
The original is probably more accurate, if harder to read. The byte-size of the message part of log output is reported, so that tools like QGit can slurp that many bytes and then treat the remainder as a patch (if -p, --stat, etc. were given).
Perhaps some of the above could make it into a clearer description? E.g., --log-size:: Include a line "log size <number>" in the output for each commit, where <number> is the length of that commit's message in bytes. Intended to speed up tools that read log messages from 'git log' output by allowing them to allocate space in advance.
Yeah, that reads better. We do not have to single out "if also a diff is shown", as there are other kinds of output that can follow the message proper, and they are not counted.
The commit introducing --log-size also says: In case it is not possible to know the size upfront size value is set to zero. Is this still true? When is it not possible to know the size up front?
I have no idea ;-) Perhaps Marco can enlighten us?
The implementation of --log-size is
if (opt->show_log_size) {
printf("log size %i\n", (int)msgbuf.len);
graph_show_oneline(opt->graph);
}
What happens if the commit message is long enough to overflow a 32-bit
integer? Is that impossible for other reasons? If it is possible,
(not about this patch) should this be using a 64-bit integer to print
instead?A nice low-hanging fruit ;-) Thanks