Not a web page pretending to be an application
We think Tortilla is the most capable file-manager-integrated git client on any platform. Here's what makes it different.
Native everywhere
Built on rapport, which uses each platform's real widgets: Win32 on Windows; GTK 4, GTK 3 or Qt 6 on Linux, picked to match your desktop. Your theme, fonts, dark mode and scaling apply, because they're the toolkit's own.
Instant
It opens at once and scrolls through years of history at your display's refresh rate. C++, libgit2 for reading the repository, git for the work, and nothing slow on the UI thread.
Forge-aware
Pull requests from GitHub, GitLab, Gitea and Forgejo sit on your branches' labels, with their CI marks. Create, merge or close them without leaving the log.
At home if you know TortoiseGit
Its dialogs and menus, so the muscle memory carries over, and now on Linux too. Right-click a folder, pick Commit or Show log, and you're there.
What's in the shell
-
In your file manager
TortoiseGit's menu in Explorer, Nautilus, Nemo, Caja, Thunar, Dolphin and PCManFM, an icon on every entry, each where you want it. On Windows, badges show what's modified, added or conflicted at a glance (not yet on Linux).
-
Log and commit graph
Branch, tag and pull request labels, filters, and a Show menu: all branches, my branches, pull requests, branch tips only, only what's not merged. Drag a label to move a branch; double-click to switch.
-
Sync
One Fetch button fetches every remote side by side and fast-forwards the branches you aren't on. Before you click, its badge says what a sync would bring.
-
Commit
Pick the files, amend, set the author or date, sign off. Mark a file to restore after the commit, to split a change across several commits.
-
Interactive rebase
Pick, squash, edit or skip; drag to reorder; add commits picked or dragged from a log.
-
Blame and history
Each line's last commit with a slider back through the file's history; bisect, reflog, Format Patch, Export and the Repository Browser.
-
Diff your way
A built-in unified diff viewer, or your own tool: WinMerge, Beyond Compare, Meld, KDiff3 and others, detected for you.
-
Branches and the rest
Branch, tag, switch, merge and reset; stash, worktrees and submodules; conflicts in your merge tool.
-
Remotes
Clone, fetch, pull and push with progress; passwords and host keys asked in Tortilla's own window; Git LFS.
Your pull requests, on your branches
Tortilla talks to GitHub, GitLab, Gitea and Forgejo, so the log shows what your forge knows.
PR badges and CI marks
A branch with a pull request shows its number and a mark: checks passed, failed or running, and whether it can be merged, conflicts or is waiting on the rules.
Tooltips that explain
Hover over a mark for what it means and each check's result, one by one, and what stands in the way of merging.
Create, merge, close
Create Pull Request from any branch, offering only targets that make sense, forks included. Merge or close from the pull request's own menu, which says why a merge isn't possible yet.
Sign in your way, or not at all
Signed in with the GitHub CLI? Tortilla uses that, with nothing to set up. Or sign in through the browser or with a token, kept in your system keychain. Public repositories on github.com, gitlab.com and codeberg.org need no sign-in at all.
Native everywhere
One application, drawn by each desktop's own toolkit: the same windows, wearing whatever your desktop is wearing.
Platforms
Windows
Win32 widgets throughout. Tortilla adds its menu to Explorer's right-click menu, and status badges on file and folder icons show what's modified, added or conflicted at a glance. It uses Git for Windows to run git.
Linux
GTK 4, GTK 3 or Qt 6, whichever suits your desktop, chosen when it starts (or pick one with --ui). Context menus for Nautilus, Nemo, Caja, Thunar, Dolphin and PCManFM; icon badges aren't there yet. x86_64 and arm64.
There's no macOS version.
Install
Tortilla 0.1.0, the first release, is on its way. Once it's tagged, the downloads are on GitHub Releases:
Windows
An installer that adds Tortilla to Explorer for every user, or a zip. Needs Git for Windows.
Linux
.deb for Debian and Ubuntu, .rpm for Fedora, and Arch packages. Install tortilla, and your file manager's package (tortilla-nautilus, tortilla-dolphin, …) for the menu.
Until then, CI builds the same packages on every change, or you can build from source:
git clone --recursive https://github.com/TurkeyMan/tortilla.git
cd tortilla
cmake -S . -B build -G Ninja
cmake --build build
build/bin/tortilla log /path/to/a/repo
You need CMake 3.25, a C++23 compiler, libgit2, and on Linux the development files for GTK 3, GTK 4 and/or Qt 6.

