arc set-config editor "vim"

转自:http://udn.yyuap.com/thread-39791-1-1.html
Pharicator是FB的代码审查工具,现在我所在的团队也使用它来进行代码质量的控制。其提供了一个differential(code review)命令行工具Arcanist(arc)。本文仅从本人的日常使用中总结出Arcanist比较常用的用法做个简单介绍。

  环境说明
OS: OS X Mountail Lion
SCV: svn
IDE: Eclipse

  安装
将Arcanist的源码拷贝到本地

somewhere/ $ git clone git://github.com/facebook/libphutil.git
somewhere/ $ git clone git://github.com/facebook/arcanist.git
复制代码

将arc的路径加入到系统路径中

$ export PATH=$PATH:/somewhere/arcanist/bin/
复制代码

  或在系统的profile或是bash(如果用bash)的配置文件的末尾加上这一句。
命令行中输入arc看提示确认是否安装成功。

  arc配置
arc的全局配置

  配置arc的默认编辑器,我使用vim
$ arc set-config editor "vim"
复制代码

  配置默认的phabricator的uri,uri为团队的phabricator主页的url
$ arc set-config default http://phabricator.example.com
复制代码

在项目的根目录下建.arcconfig配置文件,文件中至少要填入以下内容

{
"project_id" : "your project name",
"conduit_uri" : "your phabricator url"
}
复制代码

  举个例子:
{
"project_id" : "HelloWorld",
"conduit_uri" : "http://phabricator.example.com"
}
复制代码

  该配置文件还可以配置静态代码检测引擎(lint)和单元测试引擎。
为项目安装证书,用于phabricator的认证。

yourproject/ $ arc install-certificate
复制代码

  接着按照命令行提示操作就OK了。

  弄完这一步,才能真正在项目中使用arc。

  在项目中使用arc
arc help [--full | [COMMAND]] 查看帮助文档,接参数--full查看所有命令的详细用法,接具体的命令[COMMAND]如arc help diff可以查看该命令的详细用法。
想phabricator提交review request(Differential).修改完代码后,使用arc diff 命令提交review request,该命令会产生一个包含如下内容的文件要求填写:

<>

Summary:

Test Plan:

Reviewers:

CC:

Maniphest Tasks:

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

复制代码

  按照提示填写后,保存退出,arc就会自动提交request。Reviewers用逗号隔开,Maniphest Tasks填相关联的phabricator上的task_id,如T100。Test plan暂时没用过,官方文档:http://www.phabricator.com/docs/phabricator/article/Differential_User_Guide_Test_Plans.html

  提交完成后,会产生一个形如http://phabricator.example.com/D24的url,url中的D24是revision_id。
arc diff --update 更新对应的review request。该命令产生一个如下的文件,按提示填写保存退出,arc会提交更新。

Updating D27: hahahah

Enter a brief description of the changes included in this update.

The first line is used as subject, next lines as comment.

If you intended to create a new revision, use:

$ arc diff --create

复制代码

arc commit --revision 提交对应提交代码更改,这个命令把svn commit的工作也做掉了,直接提交到代码库。
arc todo [option]可以快速给自己在phabricator上创建task,[option]用于把task CC给其他人.
arc tasks [options] 查看Maniphest的tasks。
arc amend --show 查看当前项目的differentials,arc amend --revision --show 查看指定revision_id的differential。

  Reference:

  Arcanist官方文档: http://www.phabricator.com/docs/phabricator/article/Arcanist_User_Guide.html

设置arc 的默认编辑器的更多相关文章

  1. flashfxp软件设置并关联默认编辑器

    flashfxp是一款优秀的ftp应用软件,作为程序员,有时候一点小的改动,在线编辑是很方便的选择,但是flashfxp自带的编辑器像记事本一样,非常不好用.那么怎么设置关联到本地的编辑器,比如设置成 ...

  2. 不能设置sublime text 2 为默认编辑器

    今天遇到一个有趣的事情,当我设置 css 样式表的默认打开方式的时候,却始终无法设置成功,系统总是随机选取一种打开方式来打开文件.比如:pdf.DW.txt等方式. 我设置默认打开方式的步骤如下: 1 ...

  3. Ubuntu下将Sublime Text设置为默认编辑器

    转自将Sublime Text 2设置为默认编辑器 修改defaults.list 编辑/etc/gnome/default.list文件,将其中的所有gedit.desktop替换为sublime_ ...

  4. Linux 设置默认编辑器(以nano为例)

    查看nano地址 which nano output: /usr/bin/nano 设置默认编辑器 nano ~/.bashrc export EDITOR=nano alias vi=/usr/bi ...

  5. Ubuntu14.04、win7双系统如何设置win7为默认启动项

    Ubuntu14.04.win7双系统如何设置win7为默认启动项 Ubuntu14.04.win7双系统设置win7为默认启动项方法: 在启动项选择菜单处记住windows 7对应的序号. 从上至下 ...

  6. iOS开发--应用设置及用户默认设置——转载

    [链接]iOS开发--应用设置及用户默认设置[1.bundlehttp://www.jianshu.com/p/6f2913f6b218 在iphone里面,应用都会在“设置”里面有个专属的应用设置, ...

  7. Eclipse —— 如何修改文件的默认编辑器

    Eclipse下的各类文件各自都有默认的编辑器,但不一定好用.如何指定各种文件的默认编辑器呢? 假如,Properties文件,我不想用Eclipse自带的编辑器,而是使用 Properties Ed ...

  8. 设置ARC有效或者无效

    在编译单位上,可以设置ARC有效或者无效.比如对每个文件可以选择使用或者不使用ARC,一个应用程序中可以混合ARC有效或者无效的二进制形式. 设置ARC有效的编译方法如下所示:(Xcode4.2开始默 ...

  9. 解决IIS7多域名绑定同一物理目录,设置不同的默认文档的问题

    IIS7多域名绑定同一物理目录,设置不同的默认文档是没办法设置的,因为在一个物理目录下只有一个web.config,并且IIS7把默认文档设置写在这里,导致所有域名的默认文档设置共享.解决方法:1.进 ...

随机推荐

  1. .NET 响应式自动缩略图服务器

    做互联网网站,总是会涉及到缩略图问题,之前一直是在上传图片时生成不同尺寸的缩略图,一直感觉又费力又不好管理,之后就写子 ThumbnailServer 用于部署一个图片服务器,在使用图片时才将图片转为 ...

  2. 《InsideUE4》-7-GamePlay架构(六)PlayerController和AIController

    PlayerController:你不懂,伴君如伴虎啊 AIController:上来,我自己动 引言 上文我们谈到了Component-Actor-Pawn-Controller的结构,追溯了ACo ...

  3. SSH----小小项目的小小总结

    嘛,之前学了一下SSH框架,跟人合作写了个小东西参加比赛,(当然我是队长),真的感慨良多~,现在用这篇博客记录下来吧 1.责任心/责任感 首先要说的一点,要有责任心,当你与别人组成一个团队的时候,虽然 ...

  4. org.hibernate.HibernateException: No Session found for current thread

    spring.springmvc和hibernate整合 在sessionFactory.getCurrentSession()时,出现以下异常 No Session found for curren ...

  5. jquery用一个事件控制另一个事件是否执行(不是删除事件)

    想用click事件控制mouseover事件的执行,如果用删除绑定mouseover事件以后就不能再使用mouseover了,于是只需要设置一个全局变量,并赋值false,当点击click事件,将全局 ...

  6. STM32端口复用和映射

    STM32的功能引脚重映射和复用功能STM32中有很多内置外设的输入输出引脚都具有重映射(remap)的功能,本文对一些在使用引脚重映射时所遇到的有关问题加以说明.我们知道每个内置外设都有若干个输入输 ...

  7. 使用java库中的对称加密算法

    对称加密算法是说加密方和解密方使用相同的密钥.常见的对称加密算法包括4个,DES,DESede(3DES),AES,PBE. 本文讨论的内容是加密算法,不是Message Digest,不是编码.下面 ...

  8. 51nod 简单的动态规划

    1006 最长公共子序列Lcs 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 给出两个字符串A B,求A与B的最长公共子序列(子序列不要求是连续的). ...

  9. 添加native service

    原文地址:http://blog.csdn.net/zhx6044/article/details/47342227 Native Service 其实就是一个 linux 守护进程,提供一些服务,不 ...

  10. Azure SQL Data Warehouse

    Azure SQL Data Warehouse & AWS Redshift Amazon Redshift Amazon Redshift 是一种快速.完全托管的 PB 级数据仓库,可方便 ...