git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] xmerge.c: fix xdl_merge to conform with the manual

From
Junio C Hamano <gitster@pobox.com>
Date
Mar 3, 2015, 20:32 UTC
Message-ID
<xmqqzj7takks.fsf@gitster.dls.corp.google.com>
In-Reply-To
<1425404233-89907-1-git-send-email-anton.a.trunov@gmail.com>
Anton Trunov <anton.a.trunov@gmail.com> writes:
Show 6 quoted lines
> The git-merge manual says that the ignore-space-change,
> ignore-all-space, ignore-space-at-eol options preserve our version
> if their version only introduces whitespace changes to a line.
>
> So far if there is whitespace-only changes to both sides
> in *all* lines their version will be used.

I am having hard time understanding the last sentence, especially the "So far" part. Do you mean "With the current code, if ours and theirs change whitespaces on all lines, we take theirs"?

I find the description in the documentation is a bit hard to read.
  * If 'their' version only introduces whitespace changes to a line,
    'our' version is used;
  * If 'our' version introduces whitespace changes but 'their'
    version includes a substantial change, 'their' version is used;
  * Otherwise, the merge proceeds in the usual way.

And it is unclear if your reading is correct to me. In your "So far" scenario, 'our' version does introduce whitespace changes and 'their' version does quite a bit of damage to the file (after all, they both change *all* lines, right?). It does not seem too wrong to invoke the second clause above and take 'theirs', at least to me.

It is an entirely different matter if the behaviour the document describes is sane, and I didn't ask "git log" what the reasoning behind that second point is, but my guess is that a change made by them being "substantial" is a sign that it is a whitespace cleanup change and we should take the cleanup in such a case, perhaps?

Previous: Anton TrunovNext: Anton Trunov
Message 7 of 13 in “xmerge.c: fix xdl_merge to conform with the manual”
  1. xmerge.c: fix xdl_merge to conform with the manualAnton Trunov, Mar 3, 2015
  2. Torsten BögershausenMar 3, 2015
  3. Eric SunshineMar 4, 2015
  4. Anton TrunovMar 4, 2015
  5. Eric SunshineMar 4, 2015
  6. Anton TrunovMar 4, 2015
  7. Junio C HamanoMar 3, 2015
  8. Anton TrunovMar 4, 2015
  9. Junio C HamanoMar 4, 2015
  10. Anton TrunovMar 5, 2015
  11. Anton TrunovMar 6, 2015
  12. Junio C HamanoMar 8, 2015
  13. Anton TrunovMar 9, 2015

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.