Phabricator vs Google's Critique

Greg Foster
Greg Foster
Graphite software engineer


Note

This guide explains this concept in vanilla Git. For Graphite documentation, see our CLI docs.


In the landscape of code review tools, Phabricator and Google’s Critique stand out for their features and usability. This sub-page provides a comparative analysis of both tools to help developers and teams make an informed decision.


Code review is an essential practice in software development, providing benefits like improved code quality, knowledge sharing among team members, and early bug detection. Tools like Phabricator and Critique facilitate this process through various features and integrations.

Phabricator is an open-source suite of tools for software development, including code review, repository hosting, and task management. It’s known for its flexibility and extensive set of features.

Critique is a code review tool developed by Google as part of their internal tools. It’s designed for large-scale enterprise use and focuses on streamlining the code review process.

  • Differential: The code review application within Phabricator provides inline commenting, side-by-side diffs, and an audit system for post-commit reviews.

  • Audit: Post-commit review functionality that allows teams to raise concerns and discuss changes even after they've been merged.

  • Review Workflow: Critique is integrated into Google's internal development workflow and emphasizes quick, iterative reviews.

  • Inline Comments and Discussions: Like Phabricator, Critique allows inline commenting, facilitating detailed discussions on code lines.

  • UI: Phabricator has a more utilitarian interface which can have a steeper learning curve for new users.

  • Customization: Highly customizable workflows and a broad set of configurable options for different use cases.

  • UI: Critique, while not publicly accessible, is reported to have a streamlined and user-friendly interface, focusing on simplicity and ease of use.

  • Google Integration: Critique is designed to integrate seamlessly with other Google tools and services.

  • Integration: Offers a broader set of integrations within its ecosystem, including task management (Maniphest), repository browsing (Diffusion), and more.

  • Extensibility: Supports third-party integrations and can be extended through plugins and extensions.

  • Focus on Code Review: Critique is specialized for code reviews and is part of a suite of tools that Google developers use for software development.

  • Monorepo Support: It’s tailored to work efficiently with Google's massive monorepo, making it suitable for enterprises with similar setups.

  • Open Source: Phabricator is open-source, allowing anyone to use, modify, and contribute to its development.

  • Community: It has a community of users and developers that contribute to its ongoing maintenance and improvement.

  • Google Internal: Critique is an internal tool used by Google, and as such, its details are not publicly available, and it is not accessible for external use.

When comparing Phabricator and Critique, organizations should consider their specific needs. Phabricator’s extensive suite and open-source nature make it a versatile option for teams seeking comprehensive development tools with code review capabilities. On the other hand, Critique, while not available to the public, provides insights into what a large enterprise like Google has created to manage its own massive codebase effectively.

Teams must assess factors like integration needs, the scale of development, the complexity of their repositories, and their desire for community support when choosing between these tools. While Phabricator is accessible and adaptable for a wide range of workflows, Critique’s design as an enterprise-scale tool offers a glimpse into the practices that support one of the world’s leading technology companies.

Graphite
Git stacked on GitHub

Stacked pull requests are easier to read, easier to write, and easier to manage.
Teams that stack ship better software, faster.

Or install our CLI.
Product Screenshot 1
Product Screenshot 2