From: David Aguilar Date: Mon, 18 May 2009 05:51:14 GMT Subject: Re: Running vimdiff in read-only mode with git-difftool? Message-ID: <20090518055113.GB32259@gmail.com> In-Reply-To: <9e00fd550905172201n6c95dc1bia48c9ac25d8ec98f@mail.gmail.com> On Sun, May 17, 2009 at 10:01:02PM -0700, Nick Welch wrote: > I'm running: > > git difftool -y --tool=vimdiff -U99999 --patience > > and I have the following in ~/.gitconfig: > > [difftool "vimdiff"] > cmd = "vimdiff -R" I forgot to mention a couple of things. If you do change that to e.g. "myvimdiff" you'll need the $LOCAL and $REMOTE params as well; probably something like: [difftool "myvimdiff"] cmd = vim -R -d -c wincmd l \"$LOCAL\" \"$REMOTE\" $ git difftool -y -t myvimdiff Secondly, git-difftool receives both the pre and post-image and doesn't actually receive the output of git-diff, so passing --patience unfortunately won't do what you're expecting it to do. Piping the output of git-diff to something like kompare(?) is probably the only way to get the nice --patience result. It'd be nice if all diff/merge tools supported the patience diff algorithm but that's not the case right now. -- David