External Diff command won't launch Araxis Merge
Asked by maiksd:

Until recently, I relied on Araxis Merge als external diff/merge tool. Now nothing happens any more when i launch the command. When I launch it as conflict resolution tool, the window that tells me I have to quit the merge tool after merging disappears right away after showing up.

It could be that this is since the 1.5.4 update, but I'm not sure if it had worked afterwards for some time or not.

I already switched preferences to FileMerge and back. FileMerge works, Araxis Merge doesn't react.

The Araxis Merge command line utilities are in /opt/local/bin which is in my $PATH, and those work fine when invoked from the shell.

<br />


Answers:
author: KieranA
body: Hi Maik,

Actually I've just gone over this with another developer. Could we get the following details?

1. The path of your Araxis Merge installation? Typically this is in /Applications/Araxis Merge.app/
2. A copy of your .gitconfig
3. Whether there's a 'compare' utility in the following locations:
   1. /Applications/Araxis Merge.app/Contents/Utilities/
   2. /usr/local/bin/
   3. /usr/bin/
   4. /bin/

This will help us further to determine what the problem could be.

Cheers

comments: author: palexey
body: Hi Kieran,

I have same issue as Maik, and here's unusual thing:

After rather long search I found my araxis compare in "/usr/local/bin/compare2".

Possible explanation is:

I've installed imagemagick via brew recently, and it also has compare tool at "/usr/local/bin/compare". Maybe brew or something else moved it, I don't know. But araxis works great by itself, though source tree can't launch it.

After using "Other" for merge with "compare2", everything works great, except return value: Source Tree thinks Araxis wasn't launched succesfully.

Btw, before this thread I've used following merge tool options:

"Other" "open -a "Araxis Merge"" "$LOCAL $BASE $REMOTE $MERGED"

And it worked great except Source Tree couldn't recognize it's return values.

P.S. Sorry for nasty English :)


author: KieranA
body: Thanks for the information Alexey. It looks like Araxis have changed their utility to be called 'compare2' rather than 'compare'. We assume it's called 'compare' which means SourceTree is calling the wrong application. I've filed an issue here on JAC which should fix the problem: <https://jira.atlassian.com/browse/SRCTREE-1764>


author: KieranA
body: Alexey: this might be the only option. There's no real way of us telling, it seems this is a rare case of you having a 'compare' utility installed already and then installing Araxis must be creating a 'compare2' utility instead. I'm using the same build as everyone else and mine is simply 'compare'. Regardless, this is something I'll stick in the SourceTree documentation in the next version, and we may look into future workarounds. There's already issues open to help users set their diff tools more easily.


author: maiksd
body: I'm answering this only to stop this thing from spamming me with daily notifications to "be a good Answers citizen" which I was unable to get rid of otherwise. The question itself is NOT solved for me.

comments: author: KieranA
body: I've just looked into this one again, the only reason we don't allow to select a merge/diff tool is if "Allow SourceTree to modify your global Mercurial and Git configuration files" option is turned off. As you say, this option is turned on for you and it's still not allowing you to select a tool which would mean this is a bug. I've raised an [issue for you here](https://jira.atlassian.com/browse/SRCTREE-1615) so we'll follow up from there here on out.

We're really sorry about this, it's the last thing we want you to expect. If you could follow the issue I've linked we'll be updating details on there and perhaps requesting information to further find what the problem is.


author: maiksd
body: This is activated already and has been all the time.


author: KieranA
body: That's because you've disabled a preference allowing you to change your git/hg config

![](http://i.imgur.com/ox6Jio2.png)

Make sure this option is turned on


author: maiksd
body: I'm now at Sourcetree 1.6 and Merge 2012 (simply didn't have a reason to upgrade so far), and when I configure Sourcetree to use Araxis Merge for merges, Merge will simply not start up at all. Worse, the "merge using external tool" menu is then greyed out.


author: KieranA
body: Just as a note, upgrading your Araxis Merge on older versions of SourceTree will cause it to break. You'd need to upgrade to 1.6.0b1+ in order for the issue to be resolved but we've only been able to test it in our local environments, and one of the devs from Araxis tested it for us and confirmed it worked. It'd be good to know if 1.6.0b1+ is broken for a user so we can get down on this one.


author: KieranA
body: The latest Araxis doesn't support /usr/bin as far as I'm aware. Moving it there might cause issues for dependencies, I'm not sure if it's entirely standalone. Are you trying this against 1.6.0 beta versions?


author: maiksd
body: Note: I've been using Kaleidoscope recently, but will check with Araxis Merge again when my next big merge comes up, and then update this issue here.


author: KieranA
body: Hi Malik / Ye,

There was two things here. One was a non-repro in 1.5.8 that got fixed for 1.6, and the other was that Araxis have moved their compare utility to another folder in the file system which SourceTree now has to look up. Check this [JIRA issue](https://jira.atlassian.com/browse/SRCTREE-1518) for more information.

The good news is that this is fixed in 1.6. [The 1.6 beta is available](http://blog.sourcetreeapp.com/2013/04/25/sourcetree-for-mac-1-6-0b3-now-available/), so if you use that it should fix your problem. The final will be out soon, and the beta is stable.

Cheers


author: Ye Hong
body: version?1.6.0b1 , I have the same problem. Nothing happends when I click "external diff" button.

Visual Diff Tool: Other

Diff Command: compare

Arguments: $REMOTE $LOCAL

And I can run command blow in terminal.

compare ./cleanhis.sh ./cleanhis2.sh

I use Araxis Merge 2012. (Have path :/Applications/Araxis Merge.app/Contents/Utilities, and I copy "compare" file to path "/usr/bin/". So "Visual Diff Tool" can be set to "Araxis Merge", otherwise it's forbidden.)

In my case, nothing happends when I click "external diff" button, with select "File Merge". And then I turn off "Allow SourceTree to modify your global Mercurial and Git configuration files" option, the File Merge window can show.

comments: author: KieranA
body: Are you using the latest Araxis Merge?


author: maiksd
body: I had partial success using the "compare" utility as an "Other" configuration, with arguments "-wait -2 $REMOTE $LOCAL $MERGED". Araxis then correctly saves to $MERGED, but as it quits, Sourcetree doesn't pick up the changed merges.


author: maiksd
body: Note: linking in or copying the Araxis command line utilities to /usr/bin doesn't work either.


Tags: araxis

diff

external

merge