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

Re: Force Confirmation for Dropping Changed Lines

From
Junio C Hamano <gitster@pobox.com>
Date
Jan 26, 2017, 20:51 UTC
Message-ID
<xmqqy3xx35pn.fsf@gitster.mtv.corp.google.com>
In-Reply-To
<CAE1pOi0foJpZXSpHrbWqvOuG1+VoNKTCMjuLK5TCVcJuGMSOoQ@mail.gmail.com>
Hilco Wijbenga <hilco.wijbenga@gmail.com> writes:
Show 26 quoted lines
> On 25 January 2017 at 18:32, Junio C Hamano <gitster@pobox.com> wrote:
>> I think you should be able to do something like
>>
>>         $ cat >$HOME/bin/fail-3way <<\EOF
>>         #!/bin/sh
>>         git merge-file "$@"
>>         exit 1
>>         EOF
>>         $ chmod +x $HOME/bin/fail-3way
>>         $ cat >>$HOME/.gitconfig <<\EOF
>>         [merge "fail"]
>>                 name = always fail 3-way merge
>>                 driver = $HOME/bin/fail-3way %A %O %B
>>                 recursive = text
>>         EOF
>>         $ echo pom.xml merge=fail >>.gitattributes
>>
>> to define a custom merge driver whose name is "fail", that runs the
>> fail-3way program, which runs the bog standard 3-way merge we use
>> (so that it will do the best-effort textual merge) but always return
>> with a non-zero status to signal that the result is conflicting and
>> needs manual resolution.
>
> Thank you, that's an improvement. :-) Unfortunately, it still
> completes the merge. Is there any way to simply get the
>>>>>>>>>/<<<<<<<< markers?

You can, but you need to write one yourself without relying on "git merge-file", because the whole point of the 3way merge we implement (including in that program) is "do not bother the user when both sides made the same change."

Previous: Hilco Wijbenga
Message 11 of 11 in “Force Confirmation for Dropping Changed Lines”
  1. Hilco WijbengaJan 25, 2017
  2. Jacob KellerJan 25, 2017
  3. Hilco WijbengaJan 25, 2017
  4. Jacob KellerJan 25, 2017
  5. Junio C HamanoJan 25, 2017
  6. Hilco WijbengaJan 25, 2017
  7. Jacob KellerJan 26, 2017
  8. Junio C HamanoJan 26, 2017
  9. Jacob KellerJan 26, 2017
  10. Hilco WijbengaJan 26, 2017
  11. Junio C HamanoJan 26, 2017

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.