DEV Community

Cover image for Gitwyn - a native Git client that lives right beside Xcode
Karthik K
Karthik K

Posted on

Gitwyn - a native Git client that lives right beside Xcode

If you write Swift, you already know Xcode's Source Control menu is... fine. Fine for a commit here and there. Not fine for staging individual hunks, untangling a merge conflict, or actually reading your commit history.

I got tired of alt-tabbing to a separate Git GUI (or the terminal) every time I needed to do anything beyond "commit and push," so I built Gitwyn — a native macOS Git client that opens directly on top of your active Xcode project with one keyboard shortcut.

The pitch

Press E in any Xcode window. Gitwyn detects the repo behind whatever project you have open in Xcode and pops up right there — no picking a folder, no separate app to manage, no context switch.

It's a 100% native SwiftUI app. No Electron, no bundled runtime — just a small, fast window that gets out of your way when you're done.

What it actually does

Granular staging. Unstaged and staged changes side by side. Stage or discard a single hunk (not just a whole file), watch the counts update live, and commit exactly what you meant to.

A commit graph that scrolls. Full history, infinite scroll, authors/branches/messages, a diff for every commit. Search by message, author, or hash. Branch, reset, cherry-pick, or revert straight from the graph — no memorizing flags.

Merge conflicts without leaving Xcode. Every conflicted file in one list, current vs. incoming shown side by side per hunk, Accept on either side. For the ones that need real thought, jump straight into Xcode — then commit the merge from the same panel.

Branch/tag switching that doesn't fight you. One command palette, start typing, jump. No hunting through Xcode's branch dropdown.

Stashes with actual names. Shelve work-in-progress, see exactly what's inside (files, hunks, add/delete counts) before you apply, pop, or drop.

Why not just use git in the terminal / SourceTree / Tower / GitButler / etc?

Nothing wrong with any of those — I still drop to the terminal plenty. Gitwyn's whole reason to exist is proximity: it's bound to the Xcode window you're already in, so the loop of "look at diff → stage a hunk → switch branch → resolve a conflict → back to writing code" never leaves the editor you're staring at. If you don't work in Xcode day-to-day, this project probably isn't for you — and that's fine, it's not trying to be a general-purpose Git GUI.

Privacy / how it's built

Everything runs locally against your existing git install — Gitwyn doesn't upload, cache, or phone home with anything about your source code. It shells out to git the same way you would, just with a UI on top.

Try it

It's free, requires macOS 26+.

Would genuinely love feedback, bug reports, or "why doesn't it do X" — I read everything that comes in.

Top comments (0)