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."