Arcanist
Arcanist provides command-line access to many Phabricator tools (like Differential, Files, and Paste), integrates with static analysis ("lint") and unit tests, and manages common workflows like getting changes into Differential for review.
Arcanist is a wrapper script that sits on top of other tools (e.g., Differential, linters, unit test frameworks, git, Mercurial, and SVN) and provides a simple command-line API to manage code review and some related revision control operations.
Workflow
Setup
SSH
To authenticate over SSH, users should add their public keys under Settings → SSH Public Keys.
I've uploaded a text file of the full arcanist command reference which is in the attachments.
VSCode
There is a pretty good Phabricator Extension for VSCode that I recommend using.
Windows
To set VSCode as the editor for arcanist you'll need to use
arc set-config editor "\"C:\Program Files\Microsoft VS Code\bin\code.cmd\" --wait -n"
Installation
Some quick installation tips, for more detailed instructions checkout the Links.
When cloning arcanist and libphutil you'll want to so in a more permanent directory as you'll be adding it to your PATH
. You should also clone the stable branch as the master branch is constantly under development
git clone -b stable https://github.com/phacility/libphutil.git
git clone -b stable https://github.com/phacility/arcanist.git
Windows
On Windows you should use PHP 7.3 instead of 7.4 as the newer version can cause some problems, although it has been awhile since I tested it.
Links
Arcanist User Guide: Configuring a New Project
Arcanist User Guide: Code Coverage