Question

I'm trying to use command line git on os x in conjunction with araxis merge.

I'd like git diff foo to open it araxis

I've copied the utilties in the installer to /usr/bin

$ cd /usr/bin/
$ ls | grep araxis
araxisgitdiff
araxisgitmerge
araxishgmerge
araxisopendiff
araxisp4diff
araxisp4winmrg
araxissvndiff
araxissvndiff3
araxissvnmerge

I've modified my .gitconfig to contain the following:

[user]
    name = Me
    email = Me@Me.com
[push]
    default = simple
[diff] 
tool = araxis
[merge] 
tool = araxis

Executing the following still results in a command line diff:

$ git diff template.html

Was it helpful?

Solution

Here's a .gitconfig file on os x.

[mergetool]
    prompt = false
    keepTemporaries = false
    trustExitCode = false
    keepBackup = false
[difftool]
    prompt = false
[diff]
  tool = araxis
[merge]
  tool = araxis
[mergetool "araxis"]
    path = /Applications/Araxis Merge.app/Contents/Utilities/compare
[difftool "araxis"]
    path = /Applications/Araxis Merge.app/Contents/Utilities/compare

You can then diff all changed files by executing

$ git difftool

OTHER TIPS

You should run git difftool to get it to run your custom tool.

From the git config man page:

diff.tool
Controls which diff tool is used by git-difftool(1).

If you want to use git diff, you need to set diff.external instead of diff.tool. Be warned that doing so may cause you some grief if you ever connect to your machine remotely.

diff.external
If this config variable is set, diff generation is not performed using the internal diff machinery, but using the given command.

For your case, you want something like:

[diff]
  external = /usr/bin/araxisgitdiff

For 2014 - it looks like Araxis no longer uses araxisgitdiff or araxisgitmerge - instead it uses compare via the following:

git config --global mergetool.araxis.path '/Applications/Araxis Merge.app/Contents/Utilities/compare'
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top