We're just starting a project (Unity based) and are using git (we've used SVN in the past) on Windows 10 and MacOS. We're currently using Sourcetree as our client, though we're open to use over clients. One thing we would like, is a nice way to visualise image changes. For instance, in Sourcetree (with Git LFS), which is what we get when looking at a modified image:

Image diff in Sourcetree

This isn't particularly useful. It's possible to set up an external diff tool, and use the "External Diff" link from Sourcetree. For instance, we can set up TortoiseSVN's TortoiseIDiff as an external diff tool, and we can get this diff:

Image diff with TortoiseIDiff

That's pretty nice, but now we can't "External Diff" text changes any more.

Another option is to use BeyondCompare, which can compare both text and images with the same command, and also show the "changes":

Image diff with BeyondCompare

This is quite nice, and while it's not a free tool, that's not a problem. However, I was wondering if there isn't a better way of doing it? Maybe a git GUI client that just handles comparing images out of the box. It seems like a fairly useful ability. The closest I've come is Git Tower, which will show new changes. For instance looking at the same change as above, which is an unstaged change to an image, it will look like this:

Image diff with Git Tower (unstaged)

But if you're looking at a change in the history, it will again just show the git lfs text diff:

Image diff with Git Tower (from history)

The "OLD" and "NEW" labels on top of it all, makes it look a bit like it's trying to show the diff in the other style, but maybe it's getting confused with the "diff=lfs" setting added to .gitattributes when setting up the project (I'm not completely sure if it's git LFS, Sourcetree or Bitbucket that added that).

Any ideas would be gratefully appreciated. It's not a showstopper if the tool isn't free, especially if it handles this, and all other normal git features, nicely.

EDIT: Just after posting this, I thought of trying Perforce Merge (or P4Merge) as an external diff tool, and this actually works fairly well. It handles both image and text changes automatically, and this is what I get looking at the same image change again:

Image diff in P4Merge

This is particularly cool as P4Merge is free :) It would however still be interesting to hear what other people do, and if there is a client that can handle visualising image changes out of the box, and internally rather than with an external tool.


OK, so this is what we settled for, which works and in the lack of other responses I'll post it as an answer:

First of all, Sourcetree on Mac seems to compare images just find. Even .sketch files, that P4Merge doesn't actually seem to handle, if you have the sketch app installed:

enter image description here

On Windows we've settled for installing P4Merge (aka Perforce Helix Merge) as an external diff tool, and use this when looking at changes to binaries, as described above in the edit of the question. The artists are all working on Macs, so they can manage with just Sourcetree's binary diffs in most cases.

I'm still very interested in other ideas or solutions, but thought I'd post this answer here for anyone else looking out there.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.