When comparing GitUp vs GitHub Desktop, the Slant community recommends GitUp for most people. In the question“What are the best Git clients for macOS?” GitUp is ranked 6th while GitHub Desktop is ranked 12th.
Ranked in these QuestionsQuestion Ranking
Pro Open Source, GPL-licensed
Pro Allows doing complex things without memorizing git
Git usage beyond basic checkout/commit is arcane; GitUp lets you do things in git in seconds that would take you a half hour of research with the command line.
Pro Full undo
You can backup, or edit commits, if you make a mistake.
Pro Blazing fast
Fast Git GUI. Everything is already there and loaded when you open up the window.
Pro Simple, streamlined GUI
GitHub Desktop uses an extremely simplistic two-panel view. It's not capable of complex historical visualisations like other GUIs, but it is very easy to use (especially for git novices).
Pro Supports pull requests
In addition to being able to seamlessly and easily integrate with all of GitHub's features, it also supports forking and submitting pull requests on any open source project hosted on GitHub.
Pro Great GitHub integration
This is the official GitHub desktop client built by the GitHub team.
Con OS X Only
Only available for OSX, so if you are used to working with different OSes and you want the same tools in each of them, it's impossible to have that with GitUp.
Con Font size is not adjustable
Tiny font not good for those with poor vision.
Can't handle complex tasks. The Help Manual advises to use command-line Git instead.
Con Incomplete feature set
For e.g. Cannot do re-base, cherry-pick, commit chunks, stash.
Poster child for authors' programming ideology (FRP), likely the cause for the odd quirks and bugs it has.
Con Not free/libre
This application is proprietary, and thus cannot be modified or freely distributed.
Con Non-GitHub repositories are not fully supported
Since this is mainly a GitHub client, other repositories are not fully supported and with as many features and setting up a repo hosted anywhere else but GitHub is troublesome.
Con Does not support multiple Remotes for a repo
Only allowed to assign one URL as remote. To manage/sync/fetch other remotes, use command-line Git instead.
Con No Linux support
There's no Linux version of this client.