.cargo | ||
.github | ||
.vscode | ||
gitbutler-app | ||
gitbutler-core | ||
gitbutler-ui | ||
scripts | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
DEVELOPMENT.md | ||
LICENSE.md | ||
package.json | ||
pnpm-lock.yaml | ||
pnpm-workspace.yaml | ||
README.md | ||
rust-toolchain.toml | ||
SECURITY.md |
GitButler
GitButler is a new approach to version control tooling, using Git as a backend
It is an open source Tauri-based Git client. It's UI is written in Svelte using TypeScript and it's backend is written in Rust.
Downloading a Build
You can download the newest client build from our downloads page.
Currently we have builds for Mac and Linux. A Windows build is on the way.
Why GitButler?
Git's user interface has hardly been touched for 15 years. While it was written for Linux kernel devs sending patches to each other over mailing lists, most modern developers have different workflows and needs.
GitButler aims to rethink the version control concept, while still storing data in Git and being able to push trees to Git servers.
Main Features
- Virtual Branches
- Organize work on multiple branches simultaneously, rather than constantly switching branches
- Automatically create new branches when needed
- 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 Tools
- 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
Documentation
You can find our end user documentation at: https://docs.gitbutler.com
Bugs and Feature Requests
If you have a bug or feature request, feel free to open an issue, or join our Discord server.
Contributing
So you want to help out? Please check out the CONTRIBUTING.md document.
If you want to skip right to getting the code to actually compile, take a look at the DEVELOPMENT.md file.