phabricator 结合 arcanist 使用
简介
arcanist 是 phabricator 接口的命令工具,主要用于提交 diff 和 push review 通过的commit。
安装
下载源码,然后指定系统的环境变量即可
$ some_install_path/ $ git clone https://github.com/phacility/libphutil.git
$ some_install_path/ $ git clone https://github.com/phacility/arcanist.git
指定环境变量
-- 修改 .bash_profile(如果装有 zsh, 则修改 .zshrc),下面的 /Users/Grissom/mydocs/arc/arcanist/bin 就是我本机 arc 源码所在的路径
$ export PATH=${PATH}:/usr/local/mysql/bin:/Users/Grissom/mydocs/arc/arcanist/bin
-- 然后运行以下命令使之起效
$ source .bash_profile
-- 查看是否安装好
$ arc help
-- 配置arc的默认编辑器,我使用vim
$ arc set-config editor "vim"
--配置默认的phabricator的uri,uri为团队的phabricator主页的url
$ arc set-config default <your phabricator uri>
--在项目的根目录下建.arcconfig配置文件,文件中至少要填入以下内容
{
"project.name": "对应 phabricator 的 project name",
"phabricator.uri": "<your phabricator uri>"
}
-- 为项目安装证书,用于phabricator的认证。
$ arc install-certificate
-- 上面命令会提示到指定 uri 获取 token, 然后粘贴下去,就 ok 了
使用
--创建本地分支
$ git checkout -b b_test_0729
-- 修改代码, 然后提交
$ git add . && git commit -m "test"
--创建 revision 并提交到 phabricator
$ arc diff b_test_0729
--上面命令会弹出 vim ,需要填写一些信息,如下
<<Replace this line with your revision title> -- title 必填
Summary: -- 简述 必填
Test Plan: -- 测试计划 必填,如果没有,可以填: NO
Reviewers: -- 指定审核人,必填,注意审查人是在 phabricator 上注册的用户账号,而且 Reviewers: 与审查人之间不能有空格,这是个坑
Subscribers: -- 可删除
# NEW DIFFERENTIAL REVISION
# Describe the changes in this new revision.
#
# arc could not identify any existing revision in your working copy.
# If you intended to update an existing revision, use:
#
# $ arc diff --update <revision>
提交
如果 Reviewer 审查通过,就可以用 arc 进行提交了
$ arc land -- 会自动合并到 origin master 并且删除当前本地分支
参考
[https://secure.phabricator.com/book/phabricator/article/arcanist_windows/] (windows 系统参考 https://secure.phabricator.com/book/phabricator/article/arcanist_windows/)
https://sezina.github.io/2013/07/16/phabricatorming-ling-xing-gong-ju-arcanistde-ji-ben-yong-fa/
https://www.slahser.com/2016/02/29/Arcanist%E7%94%A8%E6%B3%95%E7%AE%80%E4%BB%8B/
phabricator 结合 arcanist 使用的更多相关文章
- 有人实践过 Phabricator 以及 Arcanist 作为 code review 的工具么?(转)
作者:覃超链接:http://www.zhihu.com/question/19977889/answer/13539702来源:知乎 平时就经常实践. 整个公司的code review就是使用这个. ...
- 搭建phabricator代码审核工具
phabricator 依赖环境 系统centos,mysql,php,nginx 1.下载安装脚本 https://secure.phabricator.com/source/phabricator ...
- **代码审查:Phabricator命令行工具Arcanist的基本用法
Phabricator入门手册 http://www.oschina.net/question/191440_125562 Pharicator是FB的代码审查工具,现在我所在的团队也使用它来进行代码 ...
- 关于Phabricator Arcanist以及提交项目代码
git配置 github的使用:https://github.com/runchen0518/OnlineJudge/blob/master/README.md $ git config --glob ...
- phabricator在mac上的搭建
环境:OS X Yosemite 10.10.5 前提:phabricator主要是由php写的,而且是以website方式运行的,所以mac上要先安装好 php + nginx(或apache) + ...
- Phabricator部署手册
参考:https://secure.phabricator.com/book/phabricator/article/installation_guide/ 概述 phabricator,由faceb ...
- phabricator
(1)安装./bitnami-phabricator-20160523-0-linux-x64-installer.run (2)中文phabricator-zh_CN.tar解压缩到/opt/pha ...
- phabricator在mac上的搭建(转)
环境:OS X Yosemite 10.10.5 前提:phabricator主要是由php写的,而且是以website方式运行的,所以mac上要先安装好 php + nginx(或apache) + ...
- phabricator 搭建
os:debian7 Installation Guide :https://secure.phabricator.com/book/phabricator/ $ cd /data # 安装目录 da ...
随机推荐
- quarz时间配置
Cron表达式的格式:秒 分 时 日 月 周 年(可选). 字段名 允许的值 允许的特殊字符 秒 ...
- MySQL分析函数实现
| MySQL分析函数实现还好MySQL8.0已经实现了与Oracle相同的分析函数. 1. 实现rownumSET @rn:=0;SELECT @rn:=@rn+1 AS rownum ,e.* F ...
- MySql8.0.15 window 初始化 修改密码
1.将安装包解压到安装目录: 2.将安装目录下的bin文件目录添加到系统变量中: 3.初始话数据库 mysqld --initialize --console 执行完成后,会打印 root 用户的初始 ...
- MySQL优化—工欲善其事,必先利其器(2)
上一篇文章简单介绍了下EXPLAIN的用法,今天主要介绍以下几点内容: 慢查询日志 打开慢查询日志 保存慢查询日志到表中 慢查询日志分析 Percona Toolkit介绍 安装 pt-query-d ...
- sql点滴44—mysql忘记root密码
1. 首先检查mysql服务是否启动,若已启动则先将其停止服务,可在开始菜单的运行,使用命令: net stop mysql 打开第一个cmd1窗口,切换到mysql的bin目录,运行命令: mysq ...
- skimage 安装和子模块
平台:Windows 10 1.安装anaconda anaconda是python环境的集成安装软件,建议安装2.7版本的python 2.安装skimage 打开windows的命令提示符: 输 ...
- python基础之单例设计模式
class Player(): instance = None init_flag = False def __init__(self): if self.init_flag is False: pr ...
- lavarel模板引擎blade学习
blade 模板学习 特点 主要的两个优点是:模板继承和区块 继承页面布局 布局文件(layout.php) + 详情文件 (page.php) 的组合,即一般到具体的组合.在blade文件之中的体现 ...
- Netty入门(二)时间服务器及客户端
在这个例子中,我在服务器和客户端连接被创立时发送一个消息,然后在客户端解析收到的消息并输出.并且,在这个项目中我使用 POJO 代替 ByteBuf 来作为传输对象. 一.服务器实现 1. 首先我们 ...
- [测试] Markdown+Latex
标题 标题 标题 标题 标题 标题 #include <cstdio> #define R register int #define I inline void #define IL in ...