Git Diffs & Merges, but Nicer
Browse commits, compare branches, see how a file has changed over time. Gain insights into tricky conflicts and resolve them with a powerful merge tool.


Learn how David uses JuxtaCode as part of his workflow in #308 of Under the Radar
New in Version 1.2
Tahoe Compatibility
JuxtaCode's UI has been overhauled to work with Liquid Glass on macOS Tahoe.
Plus:
- Symbols to indicate change types
- Performance and stability improvements
See What Changed
Simply open your Git repo to browse commits, review code changes or track a file's history.
Browse Commits with Ease
Go through your project's timeline by selecting commits from the sidebar. You'll be presented with fully expanded changesets, complete with syntax highlighting.

Review Code Changes
Select any 2 changesets to present them side-by-side in JuxtaCode's 2-up diff tool. This view shows one file at a time making it easy to scrutinize changes between two branches or commits.

Track a File's History
Access a file’s complete history by simply opening it. A dedicated tab will show all the relevant changes from the file’s inception to the latest commit (or your local changes if you’ve made a recent edit) even if the file has been renamed or moved along the way.
Plus More Tools for Diving Deep
- A detailed commit inspector.
- Search commits by message, hash, branch or tag.
- Filter commits by branch or tag.
- Filter files by file name, file type or type of change.
Untangle Tricky Merges
JuxtaCode detects conflicts and surfaces the information you need to track down the underlying causes. When it comes to making fine-grained edits, the powerful and adaptive 3-way merge tool helps you weave together code from each side of the conflict.
Reveal the Story Behind the Conflict
Conflicting commits are helpfully labeled as OURS and THEIRS, making it easy to see which changes led to the conflict. The workspace view lets you choose how to resolve each file. You can also unresolve files if you need a do-over.

3-way Merge Tool
Make light work of complex conflicts with the powerful 3-way merge tool. Line-level changes are highlighted with bands of colour that persist - growing and shrinking - as you merge the code. Word differences are highlighted dynamically as you type.

Compare & Merge Any Text
JuxtaCode’s diff and merge tools can be used with any plain text, even if it's not in a Git repo.

Open, drag, paste…
Open any file or paste text to start a comparison.

Merge Any Text
Start a 3-way merge from any file comparison.

Fits Your Workflow
Command Line Tool
Launch diffs and merges right form the terminal with the juxta
command line tool.
CONFLICT (content): Merge conflict in complete-works/complete-works.xcodeproj/project.pbxproj
Auto-merging complete-works/Shared/Model/Model.swift
CONFLICT (content): Merge conflict in complete-works/Shared/Model/Model.swift
Automatic merge failed; fix conflicts and then commit the result.
> juxta_
Integrate with Visual Studio Code
Switch easily from VS Code to JuxtaCode whenever you need to resolve a conflict.

Launch From Your Git Client
While you can select commits to compare and files to merge within JuxtaCode, you can also drive these actions from your Git client of choice.
- ✔︎Tower
- ✔︎Gitfox
- ✔︎Fork

Michael Tsai – Blog
“…it acts more like a Git client here in that as you move up and down the commit list it shows you the changes made in the selected commit…”
Console
“Well designed native macOS app focused on Git diffs. Easily compare files and branches…”
iOS Dev Weekly
“…It's beautifully designed and feels like a very well crafted native Mac app…”
Requires macOS Sonoma