最近开始提交CR了,特来总结一下使用arc diff
进行代码审查的步骤。
在使用Phabricator进行代码审查时,arc diff是一个强大的命令行工具,可以轻松创建和更新Differential Diff
,以便协作者对别人写的代码进行审查。
安装和配置
在开始使用arc diff
之前,需要先安装并配置arc命令行工具。以下是安装和配置步骤:
-
安装arc命令行工具:
git clone https://github.com/phacility/arcanist.gitcd arcanistsudo ./bin/setup
-
配置arc命令行工具:
arc set-config phabricator.uri <Phabricator实例的URL> arc set-config repository.default <仓库名称>
替换 <Phabricator实例的URL> 为自己的Phabricator实例的URL,<仓库名称> 为想要关联的默认仓库名称。
创建新的Diff
首先,让我们看看如何使用arc diff
创建一个新的Diff。在代码目录中,执行以下命令:
arc diff
这将根据本地的commit创建一个新的Diff,并自动打开一个编辑器以供填写Diff的详细说明。
编辑器中包含了以下字段:
- 标题:简洁明了地描述的更改的概要。
- 摘要:提供更详细的描述,解释的更改的原因、目的和影响等。
- 测试计划:说明如何测试的更改,包括所需的环境、步骤和预期的结果。
- 填写完毕后,保存并关闭编辑器。
arc diff
命令将会上传Diff到Phabricator,并在终端显示Diff的URL。
更新已有的Diff
如果需要更新已有的Diff,可以使用arc diff
命令的--update
选项。执行以下命令:
arc diff --update <Diff ID>
将替换为要更新的Diff的ID。
与创建新的Diff类似,更新Diff时,arc diff
命令会打开一个编辑器供填写更新说明。编辑保存后,Diff将被更新并上传到Phabricator。
示例:
arc diff --update <Diff ID>
预览Diff
在提交Diff之前,可能希望预览要上传的更改的详细信息。arc diff
命令的--preview
选项可以帮助实现这一点。执行以下命令:
arc diff --preview
这将显示将要上传的Diff的详细信息,包括更改的文件、修改的行数等。但是,不会实际上传Diff到Phabricator。
如果想要预览当前提交和之前的某次提交(假设commit id 为123),那么可以按照下面格式进行preview
arc diff 123 --preview
跳过编辑器直接提供说明信息
默认情况下,arc diff
命令会打开一个编辑器供填写Diff的说明信息。如果希望通过命令行参数直接提供说明信息,可以使用--verbatim
选项。执行以下命令:
arc diff --verbatim --title "My Diff Title" --summary "My Diff Summary" --test-plan "My Test Plan"
可以使用--title
、--summary
和--test-plan
参数分别指定标题、摘要和测试计划的内容。
其他选项和高级功能
除了上述功能外,arc diff
命令还提供了其他选项和高级功能,以满足不同的审查需求。以下是一些常用选项的示例:
--allow-untracked
:允许提交未跟踪的文件。
--reviewers <reviewers>
:指定审核人。
--cc <cc>
:指定抄送人。
--base <commit>
:指定基准提交。
--skip-staging
:跳过分期区域,直接提交Diff。
要了解更多选项和详细说明,请使用以下命令查看arc diff的帮助文档:
arc diff --help