Skip to main content

Product Vision

GitHub Desktop is designed to reduce frustration and make Git and GitHub workflows more approachable for developers of all experience levels.
The roadmap outlines larger areas of work the GitHub Desktop team intends to explore. It’s not written in stone and will evolve as priorities change.

Core Principles

GitHub Desktop’s development is guided by these key principles:
1

Reduce Frustration

Remove frustration, awkward interactions, and “oh no” moments for as many people as possible. Make common workflows simple for both beginner and experienced developers.
2

Extend GitHub

Built by GitHub to extend GitHub features to your local environment. While basic functionality works with other Git hosts, the focus is on the end-to-end GitHub experience.
3

Prioritize Beginners

When choosing between workflows for advanced Git users and beginners, prioritize beginners. Support solo development while emphasizing collaborative team workflows.
4

Focus on Developers

While GitHub serves many industries, GitHub Desktop prioritizes workflows for software developers when making product decisions.
5

Learn While Working

GitHub Desktop helps you learn while getting work done. It’s a productivity tool that encourages best practices, not explicitly a teaching tool.

Target Audience

GitHub Desktop has a variety of users, but the core audience is software developers who:
  • Work on collaborative teams
  • Want a visual interface for Git operations
  • Are learning Git or prefer not to use the command line
  • Need to integrate local development with GitHub workflows
While GitHub Desktop supports many use cases, workflow prioritization focuses on software development teams when choices must be made.

Major Features Shipped

Recent Releases

Receive notifications when:
  • Checks fail on your pull requests
  • Your pull request is reviewed by team members
These features help you stay informed about important events without constantly checking GitHub.
Enhanced commit management capabilities:
  • Reorder commits via drag and drop
  • Squash commits via drag and drop
  • Amend last commit to fix mistakes
  • Create a branch from a previous commit
These features provide more flexibility in managing your commit history.
Native support for Apple silicon machines, providing better performance and compatibility on newer Mac hardware.
View more context outside of specific hunks where changes occur, making it easier to understand the full scope of modifications.
Cherry-pick commits from one branch to another using a context menu, enabling selective commit application across branches.

Earlier Releases

Added side-by-side split diff view in addition to unified diffs, giving developers choice in how they review changes.
Add tags to commits and view tags in history, supporting release management workflows.
Automatic proxy detection and configuration help for users behind corporate proxies.
Create forks directly from GitHub Desktop when contributing to repositories without write access.
Prevent commits to branches you can’t push to, avoiding frustration and wasted work.
Interactive tutorial to help new users learn the complete GitHub Desktop workflow.
Automatically prune deleted and merged branches to keep your branch list manageable.
Improved workflows for working with uncommitted changes, including stash support.
Full rebase story including:
  • Rebase when pulling (respects git config)
  • Rebase one branch onto another locally
  • Conflict resolution during rebase
Enhanced repository finder and visual differentiation to help navigate between multiple repositories.
Improved merge conflict handling and resolution workflows.

Tracking Progress

To see what the team is currently working on:
The roadmap is updated intermittently as priorities evolve. For the most current information, check the GitHub Desktop repository.

Build docs developers (and LLMs) love