# External diff viewer and stage/merge tool and git-gui?

3 messages from 2008-06-03 to 2008-06-03. Participants: Peter Karlsson, David Aguilar.
Thread: https://gitlist.dev/t/13773

## Peter Karlsson, 2008-06-03 07:24

Subject: External diff viewer and stage/merge tool and git-gui?
Message-ID: <Pine.LNX.4.64.0806030819310.31572@ds9.cixit.se>
URL: https://gitlist.dev/e/Pine.LNX.4.64.0806030819310.31572%40ds9.cixit.se

```
Hi!

As I continue to introduce Git at my workplace, I got the question on
how to integrate external diff tools with Git. I figured out a way to
get it to work with the command-line "git-diff", by setting
GIT_EXTERNAL_DIFF and hacking together a small batch file (yeah, this
is on Windows) that opens the diff in the viewer. For myself, I would
like to use tkdiff, whereas the rest of the team is used to another
side-by-side diff viewer.

However, I cannot seem to find a way to do it from git-gui, which is
the tool I have taught the rest of the team to use as their primary
interface. Is there a way to view the currently selected difference in
an external diff viewer?


Even better would be a way to allow that external tool to edit what is
to be staged - we are having some problems with version-controlling
sources in some of Borland's tools which have the bad habit of storing
local configuration in the project files, and git-gui's "hunk" picker
cannot be used to pick the relevant changes (we have to set "show less
differences" to the lowest value to get a proper hunk view, and then
git-gui cannot stage anything).

-- 
\\// Peter - http://www.softwolves.pp.se/

```

## David Aguilar, 2008-06-03 10:56

Subject: Re: External diff viewer and stage/merge tool and git-gui?
Message-ID: <402731c90806030356r1ea4317vef40b6449f4fca16@mail.gmail.com>
URL: https://gitlist.dev/e/402731c90806030356r1ea4317vef40b6449f4fca16%40mail.gmail.com
In-Reply-To: <Pine.LNX.4.64.0806030819310.31572@ds9.cixit.se>

```
On Tue, Jun 3, 2008 at 12:24 AM, Peter Karlsson <peter@softwolves.pp.se> wrote:
> Hi!
>
> As I continue to introduce Git at my workplace, I got the question on
> how to integrate external diff tools with Git. I figured out a way to
> get it to work with the command-line "git-diff", by setting
> GIT_EXTERNAL_DIFF and hacking together a small batch file (yeah, this
> is on Windows) that opens the diff in the viewer. For myself, I would
> like to use tkdiff, whereas the rest of the team is used to another
> side-by-side diff viewer.

Have you taken a look at ugit?

http://repo.or.cz/w/ugit.git
(requires the latest GitPython http://gitorious.org/projects/git-python/)

It can launch external diff tools.  It also has a very fine diff gui.
You can either select the entire diff hunk or, if you need to be more
precise, drill down to specific lines from a diff.

If the built-in diff selection doesn't suffice just right-click in the
modified files section where there's an option to send the diff to a
diff editor.  You can define that to be tkdiff, xxdiff, etc.

-- 
 David

```

## Peter Karlsson, 2008-06-03 13:40

Subject: Re: External diff viewer and stage/merge tool and git-gui?
Message-ID: <Pine.LNX.4.64.0806031439060.31572@ds9.cixit.se>
URL: https://gitlist.dev/e/Pine.LNX.4.64.0806031439060.31572%40ds9.cixit.se
In-Reply-To: <402731c90806030356r1ea4317vef40b6449f4fca16@mail.gmail.com>

```
David Aguilar:

> Have you taken a look at ugit?

Tried to now, but can't get it to quite work due to dependencies of
dependencies[1]. And is it possible to install it on a Windows box without
Cygwin?

-- 
\\// Peter - http://www.softwolves.pp.se/

 [1] GitPython install failes with "ImportError: No module named ez_setup"

```
