threads / discuss / 23610

Git merge using patience diff?

Subject: Git merge using patience diff?

## tl;dr

2 messages between Apr 26, 2010 and Apr 26, 2010.

replies: 1people: 2as markdown or json

chombee· Apr 26, 2010, 18:09 UTC · lore
Hey,
Is it possible to get git to use patience diff when merging?

My version of git is 1.5.*, from before git diff had the --patience option. I got git diff to use bzr's implementation of patience diff via GIT_EXTERNAL_DIFF. But when merging git still seems to use its normal diff. Will I need to write my own merge driver that uses patience diff?

Thanks
Jonathan Nieder· Apr 26, 2010, 18:59 UTC · re: chombee · lore

Re: Git merge using patience diff?

Hi,
chombee wrote:
> My version of git is 1.5.*, from before git diff had the --patience
> option. I got git diff to use bzr's implementation of patience diff via
> GIT_EXTERNAL_DIFF. But when merging git still seems to use its normal
> diff. Will I need to write my own merge driver that uses patience diff?

You will need to if you want that functionality. By the way, if you write a clean patch that adds a git-merge-patience program to git.git so one can use ‘git merge -s patience’ out of the box, I imagine you would find some appreciative users.

You could even piggy-back on merge-recursive to do most of the work (and share a main() function and so on), like merge-subtree did: see commit 68faf689 (A new merge strategy 'subtree', 2007-02-15) in git.git.

You might also be interested in the patches at <http://bugs.debian.org/522361>, which add patience diff support to git add --patch and friends (and are sitting in limbo until I find a chance to write some tests for them).

Hope that helps, Jonathan

← back to recent threads