跳转到内容

Phabricator 管理员手册/Arcanist

来自维基教科书,为开放世界提供开放书籍
Phabricator 徽标

Arcanist 是一款命令行工具,专为开发者与 Phabricator 交互而设计。例如,使用 Arcanist,您可以将补丁发送到 Phabricator 代码库。

Arcanist 简化了一些协作工作流程。

例如,这可能是一个 Arcanist 支持的工作流程

  • 一位贡献者克隆代码库并进行一些更改
  • 该贡献者运行 arc diff 并按照说明共享其补丁并开始审查
    • 补丁可能会被接受或拒绝,例如要求进行其他编辑
    • 补丁可以更改,直到它不再符合上游的预期
    • 每次补丁更新都可能会触发一些 与 Harbormaster 的持续集成检查
    • 补丁最终可以被接受
  • 贡献者可能能够运行 arc land 将其补丁合并到上游代码库中,并使用正确的提交消息 - 或者如果贡献者不受信任且不允许推送,则上游开发者可以为他运行 arc land 等。

此工作流程适用于 git、Subversion 和 Mercurial(略有不同)。

注意:补丁也可以在没有 Arcanist 的情况下上传,但您会失去一些功能!所以尝试一下。

有关使用 arc diff 的更多说明

补丁 vs 拉取请求

[编辑 | 编辑源代码]

有时人们不熟悉 Phabricator 推广的“补丁”逻辑。与“拉取请求逻辑”相比,“补丁”逻辑的有趣之处在于,补丁可以多次更改,也可以从头开始重写等,并且可以促进线性历史记录。

事实上,在补丁审查结束时,补丁可以“合并”到代码库中,并使用单个干净的提交。这样,您可以保持“一个想法”=“一个提交”。

一个实际的例子是 Phabricator 代码库本身,其中每个提交都与一个补丁相关联,该补丁在上线之前会经过大量的讨论和重写。结果是一个具有干净且线性历史记录的代码库,其中每个提交都代表一个想法,并且每个提交都包含有关需求等的完整说明。

https://secure.phabricator.com/source/phabricator/history/master/

安装 Arcanist

[编辑 | 编辑源代码]

Arcanist 在大多数 GNU/Linux 发行版中都有打包。

在 Debian-based 发行版中安装

[编辑 | 编辑源代码]

在 Debian GNU/Linux、Ubuntu 或任何其他衍生发行版中,安装 Arcanist 非常简单

sudo apt install arcanist

就是这样。

在 Microsoft Windows 中安装

[编辑 | 编辑源代码]

如果您想在 Microsoft Windows 10 中安装 Arcanist,您可以按照相关页面进行操作

华夏公益教科书