Why Gerrit is Important for Enterprise Git

March 15, 2013 Vishwajyoti Bhattacharjee

Gerrit is a Java based Git server and a web-based code review tool initially developed by Google to support Android development. Since its inception it has been adopted by many open source communities and enterprises worldwide, and is the most widely used code review and permissions management framework for Git. Gerrit involves three open source projects: Jgit (Eclipse foundation), Apache Mina SSHD (Apache Software Foundation) and Google Web Toolkit (GWT), which powers the web interface for Gerrit.

Gerrit is used by many of the largest open source communities such as Android, Google Code, Eclipse Foundation and OpenStack, as well as many of the world’s largest enterprises such as SAP, Sony Ericsson, EA, Intel, NXP, Ericsson, Qualcomm.

The introduction of Gerrit has made the code review process fun and easy. It allows developers to stay in their favorite environment for every step of the code review process and provides both advanced review workflows and branch based permissions. Gerrit is built on top of the Git version control system, providing access control and permissions management with various granularities (Read, Write, Delete Permission on Branches). It deeply integrates with CI tools like Jenkins, an open source continuous integration tool written in Java with 300+ plugins.

Gerrit makes sure that whatever you are going to review/merge passes all defined quality gates. So for example, when a user submits patches for review, Jenkins can automatically compile the project with the supplied patch for code review, run the test suites and then report to Gerrit whether code compilation and tests were successful or failed. This ultimately helps the reviewer save time by not having to review patches that don’t compile or failed in tests.

Gerrit can be daunting to get started. Its code base is evolving quickly, and it provides an array of parameters that can be overwhelming for the casual user. CollabNet TeamForge brings Gerrit to the masses, by incorporating Gerrit and providing an easy-to-use management framework around Gerrit and Git. Furthermore, first in the industry, TeamForge complements Gerrit and Git with unique features such as History Protection.

History Protection is a safety net for accidentally deleted branches and malicious acts. It also provides tamper-proof audit compliance and full change rollback for Git history rewrite. Once history protection is turned on, any non-fast forward push to a remote repository or deletion of a branch or tag on a remote repository is recorded and reported. So rather than disabling Git’s history rewrite feature, TeamForge instead provides a way for SCM Administrators to manage the repository safely. History Protection is industry first and a compelling feature to ensure safe adoption of Git and Gerrit in the enterprise. (Tweet This!)

You can try out CollabNet Gerrit Integration with TeamForge at: http://www.collab.net/git

For more information on TeamForge and Gerrit visit the following links: http://visit.collab.net/WebinarPromoLPs_PromoLPRegAll.html


Previous Article
Behaviors and Culture Can Impair Creating Good Product
Behaviors and Culture Can Impair Creating Good Product

When we think culture, we often think about nationality and/or regional cultures. Culture is often a dinner...

Next Article
Tips on Git
Tips on Git

I recently had to debug an issue where the Git client refused to connect to an http url to fetch content, b...