If you use the Gerrit code review system for doing commit based review, you are in luck, because GitButler now has a native "Gerrit Mode".
What's a Gerrit?
If you're not familiar, Gerrit is a Git server and code review system born out of Google to deal with review and collaboration on the newly open sourced Android operating system source code in 2009. It was designed in the spirit of the Perforce-based, internal review system used at Google called Mondrian.

It may not be as widely used for review as GitHub's Pull Requests, but it is used almost exclusively by enormous projects (Chrome, Android, all Android forks, LibreOffice, etc) and enormous enterprise teams.
It’s pretty good at things like having thousands of developers working on thousands of large, interdependent repositories. It does commit-based rather than branch-based review, scales to massive monorepos, has fine grained permissions, customizable submit policies, etc. Check it out.
What does this have to do with GitButler?
GitButler now ships with a "Gerrit Mode", making it possibly the simplest and most powerful Gerrit client available.
You can enable it in any repository by enabling the gitbutler.gerritMode Git config setting:
❯ git config gitbutler.gerritMode 1
GitButler will also try to determine if a project is a Gerrit project when being added, so in most cases, this should be done automatically.
Once set, GitButler will change it's behavior in the following ways:
- When you commit, we will automatically inject a
Change-Idtrailer into the commit in the format that Gerrit expects. You do not need to setup acommit-msghook like you do with other Git clients. - When you push, it will not push to a matching branch name on the remote. Instead it will push to
refs/for/main(or whatever the name of the target branch is set to be). - After a push, we record the change url and show you the link and number for each commit automatically.

Now you can easily drag changes into your commits and re-push them - much more easily than using git rebase -i or git commit --amend.
If you are using Gerrit in your company or project and want a very simple and powerful way to interact with your Gerrit review system, download GitButler and turn on Gerrit mode today!
If you have any questions, comments or feedback, join us in Discord or leave them on this GitHub discussion.

Written by Scott Chacon
Scott Chacon is a co-founder of GitHub and GitButler, where he builds innovative tools for modern version control. He has authored Pro Git and spoken globally on Git and software collaboration.



