When comparing Magit vs GitHub Desktop, the Slant community recommends Magit for most people. In the question“What are the best Git clients for Windows?” Magit is ranked 6th while GitHub Desktop is ranked 17th. The most important reason people chose Magit is:
Simple tasks, such as commits, can quickly be made without leaving the editor.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Uninterrupted workflow for common tasks
Simple tasks, such as commits, can quickly be made without leaving the editor.
Pro Diffs are easy
Since it's integrated with Emacs, diffs are very easy to fix. You can jump right to any file you want to fix as soon as it comes up in the logs or in the status view.
Pro Easy to remember mnemonics
You can easily learn the mnemonics for the most common tasks and use them to your advantage to speed up your workflow.
Pro Better visualization and interactive workflow
Pro Stage hunks or even just parts of a hunk using a single key press
In Magit staging a hunk or even just part of a hunk is very easy.
Magit also implements several other "apply variants" in addition to staging and unstaging. For example: you can also discard or reverse a change, or apply it to the working tree.
Pro Blame information can be viewed inline with the file
Pro Multiple buffers are used to show contextual information
Pro Powerful rebasing
Pro Available in Homebrew
brew install magit
Pro Great GitHub integration
This is the official GitHub desktop client built by the GitHub team.
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.
Cons
Con Useful only for people who use Emacs
Magit is only useful if your text editor of choice is Emacs. It wouldn't really make any sense to open up emacs just to run Magit if you use another editor.
Con Limited
Can't handle complex tasks. The Help Manual advises to use command-line Git instead.
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 Overly Simplified UI
UI that is designed not to support the needs of power and enterprise users. Management of more than five repos is next to impossible.
Con Buggy
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 No Linux support
There's no Linux version of this client.
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.