Phabricator是什么?
Phabricator是一套全面的、基于Web的开源软件开发协作工具。它最初是Facebook的内部工具,后来作为开源项目发布,并成为许多寻求自托管、一体化解决方案来管理其开发生命周期的组织的最爱。它包括代码审查、仓库托管、错误跟踪、项目管理和团队沟通等工具。
2021年5月,Phabricator背后的公司Phacility宣布停止运营,并将不再维护该项目。然而,由于其强大的功能集和忠实的用户群,一个名为Phorge的社区主导分支被创建,以继续其开发和支持。
主要功能
- Differential: 一个强大的、提交前(pre-commit)代码审查工具,通常被认为是Phabricator的杀手级功能。
- Diffusion: 一个支持Git、Mercurial和Subversion的版本库浏览器。
- Maniphest: 一个灵活的错误和问题跟踪器。
- Projects: 用于项目管理和任务跟踪的看板式工作板。
- Phriction: 一个简单有效的用于文档编写的Wiki。
- Herald: 一个基于规则的引擎,用于为平台内的事件创建触发器和通知(例如,在特定提交时通知团队)。
- Harbormaster: 一个用于构建和测试自动化的CI/CD应用程序。
使用场景
- 集成代码审查: 团队使用Differential进行彻底的、推送前代码审查,确保代码在进入主分支之前的高质量。
- 统一项目管理: 管理整个软件生命周期,从在Maniphest中跟踪错误,到在Projects中组织冲刺,再到在Diffusion中浏览代码。
- 自托管DevOps平台: 需要完全控制其工具链的组织可以自托管Phabricator(或Phorge)作为其核心开发中心。
- 自动化工作流: 使用Herald为代码所有权、构建触发器和通知创建复杂的规则。
入门指南
Phabricator是一个自托管平台,而不是一个可以导入的库。入门涉及设置一台专用服务器(通常是LEMP/LAMP堆栈)并遵循安装指南。
由于Phabricator已不再维护,强烈建议使用其继任者Phorge。
- 准备服务器: 设置一台具有兼容操作系统(如Ubuntu)、Web服务器(Nginx/Apache)、PHP和MySQL的服务器。
- 遵循Phorge安装指南: Phorge官方文档提供了详细的、分步的平台运行指南。您可以在phorge.it/docs/installation/找到它。
- 配置: 安装后,您可以开始配置版本库、创建项目和邀请用户。
这里没有“Hello World”代码,因为“第一步”就是成功安装和配置平台本身。
定价
Phabricator一直是,其继任者Phorge也仍然是免费和开源软件(FOSS)。您只需承担自己的托管费用。