# GitButler
GitButler is a modern [[Git]] client with both a GUI and a CLI (`but`), built from the ground up for AI-powered development workflows. It works as a drop-in replacement in any existing Git repo, reimagining how developers interact with version control.
Built with [[Tauri]], [[Svelte]], [[TypeScript]] (frontend) and [[Rust]] (backend engine).
## Key Features
- **Stacked branches**: Create branches layered on top of each other with automatic restacking when commits are modified
- **Parallel branches**: Work on multiple branches simultaneously without constant switching
- **Streamlined commit editing**: Drag-and-drop or simple commands replace complex `rebase -i` workflows
- **Unlimited undo**: An operations timeline logs all changes for easy reversal
- **Conflict handling**: Rebases always succeed — commits can be marked as conflicted and resolved at any time, in any order
- **Forge integration**: Native [[GitHub]] and [[GitLab]] support for pull requests and CI status
- **AI integration**: Built-in assistance for commit messages, branch names, and PR descriptions
## How It Differs from Regular Git
Traditional Git requires constant branch switching, manual rebasing, and careful conflict resolution. GitButler lets you work on multiple branches in parallel from the same working directory, edit commit history without interactive rebase, and undo any operation through a visual timeline. Conflicts don't block your workflow — they can be resolved later in any order.
## Installation
Downloads available at https://gitbutler.com/downloads. Works instantly in any existing Git repo.
## Licensing
Fair Source license with a non-compete clause that expires after two years, converting to [[MIT License]] at that point.
## References
- GitHub: https://github.com/gitbutlerapp/gitbutler
- Website: https://gitbutler.com
## Related
- [[Git]]
- [[GitHub]]
- [[Rust]]
- [[Tauri]]