GitHub Desktop 3.5.5 adds Git hooks support
Source: GitHub Changelog
The problem
Historically, Git hooks have been problematic in GitHub Desktop. Because Desktop ships with its own embedded Git installation (especially on Windows), your hooks often failed when they relied on your shell environment, version managers like nvm, or tools not present in Desktop’s stripped‑down Git. Additionally, you couldn’t distinguish between a hook rejection and other Git failures, and terminal escape codes in hook output rendered as garbled text.
These issues have affected users for years, making hooks one of the most requested features for Desktop.
What’s new
Your hooks now have access to all the environment variables available in your shell, picking them up from configuration files like .bash_profile or .zshrc.
You can enable hooks support in Settings/Options → Git → Hooks:
When hooks run, you’ll see real‑time output with proper terminal colors and formatting, making it easy to understand what’s happening.
You can also preemptively skip commit hooks by clicking the gear icon in the commit message box, or bypass a failed hook after the fact without aborting your commit:
Other improvements in 3.5.5
- Warp terminal support for Windows (thanks @Cocodrulo!)
- Open a repository in a different editor without changing your default preference (thanks @jackfreem!)
- Right‑click on any branch to quickly view it on GitHub (thanks @DylanDevelops!)
- Fixed crashes when Git output contains emoji or multibyte characters
- Fixed repository state issues when switching between branches with submodules
- Copilot‑authored commits now display the Copilot avatar
Getting started
Automatic updates will roll out progressively, or you can download the release from GitHub Desktop v3.5.5.
Have feedback or run into issues? Open an issue in the open source GitHub Desktop repository.