Re: [PATCH] merge & sequencer: turn "Conflicts:" hint into a comment
- From
Christian Couder <christian.couder@gmail.com>
- Date
- Oct 28, 2014, 06:51 UTC
- Message-ID
- <CAP8UFD28mXm2nKRbah=Nv+2Tcuvvax+NdHdp7niiekbfk-i+9w@mail.gmail.com>
- In-Reply-To
- <xmqqegttfmg0.fsf@gitster.dls.corp.google.com>
On Mon, Oct 27, 2014 at 6:32 PM, Junio C Hamano <gitster@pobox.com> wrote:
Show 13 quoted lines
> Jeff King <peff@peff.net> writes: > >> If that is the only casualty, I think it is probably a net-win. We may >> want better tooling around viewing the merge later, but that can wait >> until somebody steps up with a real use case (because even that conflict >> list may not be completely what they want; they may also want the list >> of files that were auto-merged successfully, for example). > > Yup. > > Also Christian's "trailer" series may want to learn the same trick > we did to builtin/commit.c in this series, if it does not already > know about possible trailing comment and blank lines.
The trailer series already tries to ignore comments and blank lines. This is the relevant function:
/*
* Return the (0 based) index of the first trailer line or count if
* there are no trailers. Trailers are searched only in the lines from
* index (count - 1) down to index 0.
*/
static int find_trailer_start(struct strbuf **lines, int count)
{
int start, only_spaces = 1; /*
* Get the start of the trailers by looking starting from the end
* for a line with only spaces before lines with one separator.
*/
for (start = count - 1; start >= 0; start--) {
if (lines[start]->buf[0] == comment_line_char)
continue;
if (contains_only_spaces(lines[start]->buf)) {
if (only_spaces)
continue;
return start + 1;
}
if (strcspn(lines[start]->buf, separators) < lines[start]->len) {
if (only_spaces)
only_spaces = 0;
continue;
}
return count;
}return only_spaces ? count : 0; }
But I am not sure sure that it does all of what you do to builtin/commit.c in the above patch. I will have a look. Anyway I would be happy to use an existing function or to refactor some existing code into a shared function if possible.
Thanks, Christian.