Menu Close

Arc – Landing Code to GitHub using Arc

In this article, we will explore landing Code to GitHub using Arc with Phabricator and git

Phabricator is a suite of web-based software development collaboration tools, including the Differential code review tool, the Herald change monitoring tool, and the Arcanist (Arc) command line tool. This article will guide you through the process of landing code to a GitHub repository using Arc and Phabricator with a detailed example.


  1. A GitHub account with a repository.
  2. A Phabricator instance (either self-hosted or using a service like Phacility).
  3. Arcanist (Arc) installed and configured on your local machine.
  4. Git installed on your local machine.

Step 1: Clone the GitHub repository

First, clone your GitHub repository to your local machine using Git:

$ git clone

$ cd your_repository

Step 2: Configure Arcanist

Configure Arcanist to use your Phabricator instance:

$ arc set-config default

Create an .arcconfig file in your repository root with the following content:

  "phabricator.uri" : "",

  "repository.callsign": "your_repository_callsign"

Make sure to replace with the URL of your Phabricator instance, and your_repository_callsign with the callsign of the repository in Phabricator.

Step 3: Create a feature branch

Create a new branch for your feature or bug fix:

$ git checkout -b feature/my-feature

Step 4: Make changes to the code

Make the necessary changes to the code and commit them to your feature branch:

$ git add file1 file2 file3

$ git commit -m "Implement my-feature"

Step 5: Create a Differential Revision

Create a Differential Revision using Arc:

$ arc diff

This will open an editor where you can provide a detailed description of your changes. Save and close the editor to submit the revision to Phabricator.

Step 6: Code review

Your teammates can now review your code using Phabricator’s Differential tool. They can leave comments, request changes, or accept the changes.

Step 7: Address review feedback (if necessary)

If changes are requested, make the necessary modifications to your code and update the Differential Revision:

$ git add file1 file2 file3

$ git commit -m "Address review feedback"

$ arc diff

Step 8: Land the changes

Once the Differential Revision is accepted, use Arc to land the changes to the GitHub repository:

$ arc land --onto origin/master

This will merge your feature branch into the master branch, push the changes to GitHub, and delete the feature branch.


By following these steps, you can streamline your code review process and improve collaboration using Arc and Phabricator with your GitHub repository. This setup allows you to leverage the powerful code review features of Phabricator while still keeping your code hosted on GitHub.

To check more Go related articles. Pls click given below link:

Posted in Arc

Leave a Reply

Your email address will not be published. Required fields are marked *