View Issue Details

IDProjectCategoryView StatusLast Update
0000141VisualDifferGeneralpublic2013-01-27 11:24
ReportervocaroAssigned Toadmin 
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Product Version1.5 
Target VersionFixed in Version1.5.1 
Summary0000141: Cannot integrate with third-party apps.
DescriptionI am unable to use VisualDiffer with SourceTree or "git difftool".
Steps To ReproduceI created the link:

sudo ln -s /Applications/VisualDiffer.app/Contents/Resources/visdiff /usr/bin/visdiff

I also added the following to ~/.gitconfig:

[difftool "VisualDiffer"]
    cmd = visdiff \"$LOCAL\" \"$PWD/$REMOTE\"

When I run "git difftool --tool=VisualDiffer", I do not see the diffs. I only see VisualDiffer's file selection dialog.

I also tried integrating with SourceTree 1.5.6 by going to Preferences > Diff, and then changing Visual Diff Tool to "Other" and setting Diff Command to "/usr/bin/visdiff". But when I click "External Diff", nothing happens.
TagsNo tags attached.

Activities

admin

2012-12-15 19:41

administrator   ~0000195

I know this problem, it's due to sandboxing mechanism

The problem has been reported in bug

http://bugs.visualdiffer.com/view.php?id=133
http://bugs.visualdiffer.com/view.php?id=134

The current workaround is described on the wiki page

http://wiki.visualdiffer.com/index.php/Frequently_Asked_Questions#visdiff_command_line_tool_no_longer_works

Please apologize for inconvenient, I've a bug filed at Apple developer support team and I'm waiting a for solution

vocaro

2012-12-15 19:54

reporter   ~0000196

I have added the following trusted paths:

/Users/trevor (this is my home directory)
/private/var/folders

But I still get the file selection dialog. How do I get the workaround to work? Thanks.

admin

2012-12-15 19:58

administrator   ~0000197

You need to download and use the visdiff present at this link http://bugs.visualdiffer.com/file_download.php?file_id=24&type=bug

remove your symlink and recreate it pointing to the downloaded visdiff

then it should work

vocaro

2012-12-15 20:34

reporter   ~0000198

Still does not work. Now instead of the file selection dialog I get:

$ git difftool --tool=VisualDiffer
/usr/local/git/libexec/git-core/mergetools/defaults: line 17: 54122 Killed: 9 visdiff "$LOCAL" "$PWD/$REMOTE"

This is Git 1.7.11.3

admin

2012-12-16 08:42

administrator   ~0000199

Please run visdiff from command line like (stay on directory when visdiff is copied)

./visdiff file1 file2

and see if it works

If it doesn't work then run console.app and search any log message related to visualdiffer/visdiff and report here

PS

I use git version 1.7.10.2 (Apple Git-33) and on config I've the full path specified and it works

[difftool "visdiff"]
    cmd = /opt/dave/visdiff \"$LOCAL\" \"$PWD/$REMOTE\"

vocaro

2012-12-17 16:10

reporter   ~0000200

I had installed the new visdiff incorrectly (it was being SIGKILLed for some reason). I can now get it to work from the command line for non-Git comparisons.

However, it still fails when used with Git. When I do difftool, Git creates a file in /var/folders and runs the compare tool against it. Then, when visdiff runs, it says "Left file not accessible". I assume this is because /var/folders is not a trusted path.

I have already tried adding /var/folders to Visual Differ's Trusted Paths list. But when I do so, the path appears in the list as "/private/var/folders", not "/var/folders". Any suggestions on how to fix this? Thanks.

admin

2012-12-17 16:29

administrator   ~0000201

This is related to sandbox because /var is a symlink...

BTW May you set your temp dir in some other location?

I use

export TMPDIR=/Users/dave/trash

and git on my osx box uses it

vocaro

2012-12-18 16:22

reporter   ~0000202

Ugh... I suppose that would work but it's a pretty ugly workaround. Until a better solution comes along, I'm just going to use FileMerge or a diff utility purchased outside the App Store. Thanks for your help.

admin

2012-12-18 17:14

administrator   ~0000203

Last edited: 2012-12-18 17:14

View 2 revisions

If you want I can send to you an alfa version with a fix

I'm really sorry but the problem are the sandbox rules that are very complicated

With the fix no workarounds are necessary

vocaro

2012-12-18 18:14

reporter   ~0000204

No thanks, if there's a fix in the pipeline I can wait.

Issue History

Date Modified Username Field Change
2012-12-15 19:37 vocaro New Issue
2012-12-15 19:37 vocaro Status new => assigned
2012-12-15 19:37 vocaro Assigned To => admin
2012-12-15 19:41 admin Note Added: 0000195
2012-12-15 19:54 vocaro Note Added: 0000196
2012-12-15 19:58 admin Note Added: 0000197
2012-12-15 20:34 vocaro Note Added: 0000198
2012-12-16 08:42 admin Note Added: 0000199
2012-12-17 16:10 vocaro Note Added: 0000200
2012-12-17 16:29 admin Note Added: 0000201
2012-12-18 16:22 vocaro Note Added: 0000202
2012-12-18 17:14 admin Note Added: 0000203
2012-12-18 17:14 admin Note Edited: 0000203 View Revisions
2012-12-18 18:14 vocaro Note Added: 0000204
2013-01-19 12:29 admin Status assigned => resolved
2013-01-19 12:29 admin Resolution open => fixed
2013-01-19 12:29 admin Fixed in Version => 1.5.1
2013-01-27 11:24 admin Status resolved => closed