GitButler is a Git branch management tool, built from the ground up for modern workflows.
This GUI lets you work on multiple branches at the same time. It allows you to quickly organize file changes into separate branches while still having them applied to your working directory. You can then push branches individually to your remote, or directly create pull requests.
This is free and open source software.
Key Features
- More flexible version of
git add -pandgit rebase -i, allowing you to efficiently multitask across branches. - Virtual Branches – normal Git branches, except that you can work on several of them at the same time.:
- Organize work on multiple branches simultaneously, rather than constantly switching branches.
- Automatically create new branches when needed.
- Butler Flow is a lightweight, branch-based workflow enabled by GitButler virtual branch functionality.
- Easy Commit Management:
- Undo, Amend and Squash commits by dragging and dropping.
- GitHub Integration:
- Authenticate to GitHub to open Pull Requests, list branches and statuses and more.
- Easy SSH Key Management:
- GitButler can generate an SSH key to upload to GitHub automatically:
- AI Tooling:
- Automatically write commit messages based on your work in progress.
- Automatically create descriptive branch names.
- Commit Signing:
- Easy commit signing with our generated SSH key.
Website: gitbutler.com
Support: GitHub Code Repository
Developer: GitButler Inc
License: Functional Source License, Version 1.1, MIT Future License

GitButler is written in Rust and TypeScript. Learn Rust with our recommended free books and free tutorials. Learn TypeScript with our recommended free books and free tutorials.
Related Software
| GUI Git Clients | |
|---|---|
| Gittyup | Fast Qt client and continuation of GitAhead |
| Git Cola | Powerful Python and Qt client focused on staging workflows |
| SourceGit | Feature-rich cross-platform Git GUI |
| Gitnuro | Multiplatform Git client written in Kotlin |
| GitFourchette | Comfortable Qt Git interface with precise staging tools |
| GitQlient | Qt client with hunk staging, rebase and forge integration |
| RelaGit | Modern and extensible graphical Git client |
| MeGit | Standalone desktop client based on EGit |
| gitg | Streamlined Git client for the GNOME desktop |
| Stage | Keyboard-friendly Git GUI inspired by Magit |
| Kommit | KDE client designed for everyday version control work |
| Guitar | Fast Qt-based Git GUI with extensive repository tools |
| GitPulsar | Lightweight native Git client for GNOME |
| GitForce | C# Git frontend with multi-repository workspaces |
| Desktop Plus | Enhanced GitHub Desktop fork with Linux support |
| Gitember | Cross-platform Java Git GUI with advanced tooling |
| Gitte | Native GNOME Git client with history editing |
| gitonic | Tkinter client for managing multi-repository workspaces |
| QGit | Qt/C++ history viewer and graphical Git client |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.