Git Desktop Clients
(for MacOS)
All the below support history/branch/stash browsing, viewing changes, staging changes per-file or per-line, commits (with amend), and various branch operations (eg. drag-and-drop to merge).
Github Desktop
- Does not stage changes directly in underlying git, just keeps it in-app
- Does not appear to have a tree view option for files
- Branch list does not display incoming/outgoing commit counts to the tracking branches
- No tabbed view, just a quick switcher
Fork
- No “pull-request” level github integration that I can see
- Most compact tree view
Git Tower
- Does not separate Unstaged vs Staged files, UI mirrors 2-column
git status
output - No syntax highlighting in diff view
Kraken
- Defaults to a very wide commit history panel, need to click individual files to switch to diff view
- Tree views collapsed by default, either use path view or get used to Expand All
- Awkward per-line stage/unstage behaviour (staging files or hunks is fine)
- Does not pin the default branch (master) to the top of the branch list