Introduction to Phabricator



Introduction to Phabricator

0 0


intro-to-phabricator

A slide deck for my presentation introducing Phabricator tool suite

On Github synaway / intro-to-phabricator

Introduction to Phabricator

Artur Nowak

The slide deck is accessible at http://synaway.github.com/intro-to-phabricator (source at http://github.com/synaway/intro-to-phabricator)

2

The agenda

  • What Phabricator is and what it is not
  • Short overview of components of Phabricator suite
  • Audits vs. revisions
  • How Phabricator is used by the GDT team
  • Demo time
7

Phabricator

  • Suite of tools developed (first internally) by Facebook
  • Used by some big companies (especially by teams consisting of former Facebook engineers)
  • Optimized for heavy customization, command-line usage and ability to install it nearly everywhere
  • Characterized by absurd humor (which can be turned off by switching to 'serious business' mode)
11

Phabricator components

  • Phriction
  • Maniphest
  • Pholio
  • Diffusion
  • Differential
  • Others (Phame, Ponder, Phrequent, Slowvote...)
25

Audits vs. revisions

  • Pre-commit vs. post-commit reviews
  • Audits (in Diffusion) are for post-commit reviews
  • Revisions (in Differential) are for pre-commit reviews
  • What is better? As always, it depends
30

Use of Phabricator in the GDT team

  • Maniphest for technical debt and bug reports
  • Started to use Pholio for mocks
  • Every change is going through Differential (unless we have 'unbreak now' issue and there is nobody to review it or it's a purely infrastructural change)
  • Custom lint engine with adapter for CoffeLint (open sourced on github.com
  • Plans to add test coverage integration soon
40

Demo time

  • We will be setting a project up from very start
  • Installing Arcanist and configuring it for the project
  • Adding tasks, and going through the code review
  • Setting up a custom lint engine
  • You can join now or experiment with it later: ssh://hg@svn/training/phabricator-demo