guide · intellij idea · jetbrains ides

Use Diffoniq as the external diff tool in IntelliJ IDEA and other JetBrains IDEs

IntelliJ IDEA, PyCharm, Rider, CLion and the other JetBrains IDEs can hand a diff to an external program. Point them at Diffoniq and Show Diff on a changed file opens the repository version next to your working file. Two settings do the job, and one of them is easy to miss.

1. Add Diffoniq as an external tool

Open Settings → Tools → Diff & Merge → External Diff Tools and tick Enable external tools. Under Configure external tools: press + and fill in the Add An External Tool dialog:

FieldValue
Tool groupDiff tool
Tool nameDiffoniq
Program pathC:\Program Files\Diffoniq\Diffoniq.exe
Argument pattern--read-only-left --no-backup %1 %2

That is the installer’s path; if you use the portable ZIP, put in the folder you unpacked it to.

2. Make it the default

In the table below (Configure external diff/merge tools associated with a file type:), change the Default row from Built-in to Diffoniq in the Diff Tool column. Without this step the IDE keeps using its own viewer and offers Diffoniq only through the Show Diff Using: Diffoniq menu entry — it looks as if nothing happened.

Press Test Diff to check the setup right away. Leave Trust process exit code switched off, because Diffoniq’s window always exits with 0. Do not fill in the merge half of the dialog: Diffoniq is a diff viewer, not a merge tool.

3. Compare

Right-click a modified file and choose Git → Show Diff. Diffoniq opens with the repository version on the left and your working file on the right. Git → Compare with Branch… works the same way.

The dialog’s labels are the wrong way round

The dialog explains %1 as left (Local changes) and %2 as right (Server content). For Show Diff on a modified file it is the other way round: left is a temporary copy of the repository version, right is your real working file. That is why the switch is --read-only-left.

Why the two switches

The IDE’s temporary copy on the left is a writable file. Without the switch, edits made there are saved without complaint and lost the moment the IDE discards the copy. --read-only-left locks that side; the title bar then says [Read-only: left]. Your working file on the right stays editable: drag marked lines from the repository version into it and save. The IDE picks the change up on its own and refreshes the editor.

--no-backup matters the moment you save: Diffoniq normally keeps the original as a .BAK file next to it. Inside your project the IDE would show that file as a new, unversioned file — easy to commit by accident, and the repository already keeps the old version for you.

Both switches apply to that one call only. They are never written to Diffoniq’s settings, so opening Diffoniq yourself still works as before.

Good to know

The full reference is in the help: Version Control Clients and IDEs.

Try it in your own project

Diffoniq runs on Windows 10 and 11, 64-bit. Every feature is available for 30 days before you decide.

JetBrains, IntelliJ IDEA, PyCharm, Rider and CLion are trademarks of JetBrains s.r.o. Diffoniq is not affiliated with JetBrains.