Phabricator

来自开放百科 - 灰狐
2020年12月24日 (四) 06:07Allen (讨论 | 贡献)的版本

跳转到: 导航, 搜索

Phabricator: Open Source Software Development Platform.

Phabricator 是一款可以使软件开发者之间更容易进行协同工作的Web应用,由 Facebook 开发,采取 Apache 2 许可协议。

它是一个代码审查、仓库浏览、Bug追踪、Wiki工具,它以 Applications 的方式扩展其功能。

目录

简介

Discuss. Plan. Code. Review. Test.

Every application your project needs, all in one tool.

通过 Phabricator 导入研读源代码并写 Comment 也是一个不错的学习方法。

Wikimedia 已经从 Bugzilla 迁移到 Phabricator.

功能

组成

  • Differential (Code Review), 一个Example
  • Diffusion (Repository Browser)
  • Maniphest (Task Tracking), 一个Example
  • Slowvote (Polls)
  • Herald (Notifications)
  • Conduit (Phabricator HTTP API)
  • Celerity (CSS/JS Management)
  • Phriction (Wiki)
  • Aphront (Web Stack)
  • DarkConsole (Debugging Console)

VCS

支持主流版本控制系统:

安装

Docker

源码安装

Phabricator安装和配置过程记录

git clone https://github.com/phacility/libphutil.git
git clone https://github.com/phacility/arcanist.git
git clone https://github.com/phacility/phabricator.git
cd phabricator
$ sudo apt install php
./bin/config set mysql.host localhost
./bin/config set mysql.port 3306
./bin/config set mysql.user root
./bin/config set mysql.pass password
$ sudo apt install php-mysql
./bin/storage upgrade
php -S phabricator.huihoo.org:9000 -t phabricator/webroot/ phabricator/webroot/index.php 
http://phabricator.huihoo.org:9000 ok :)

预先、相关依赖安装请参考:Installation Guide

HTTPS

Configuring a Preamble Script

Apache2

apt-get install php5-fpm
apt-get install php-apc // PHP extension 'APC' (Alternative PHP Cache) 

vim /etc/apache2/sites-enabled/000-default

<VirtualHost *:80>
 ServerName phabricator.huihoo.org
 DocumentRoot /var/www/phabricator/webroot
 RewriteEngine on
 RewriteRule ^/rsrc/(.*)     -                       [L,QSA]
 RewriteRule ^/favicon.ico   -                       [L,QSA]
 RewriteRule ^(.*)$          /index.php?__path__=$1  [B,L,QSA]
 <Directory /var/www/phabricator/webroot>
 Options Indexes FollowSymLinks MultiViews
 AllowOverride None
 Order allow,deny
 allow from all
 </Directory>
</VirtualHost>

vim /etc/huost

192.168.1.2     phabricator.huihoo.org phabricator

/etc/init.d/apache2 restart

http://phabricator.huihoo.org/

升级

升级 Phabricator

stop apache2 + php-fpm
git pull in libphutil/, arcanist/ and phabricator/
phabricator/bin/storage upgrade
restart apache2 + php-fpm

维护

./bin/storage dump | gzip > backup.sql.gz
gunzip -c backup.sql.gz | mysql
./bin/phd start //启动后台进程
./bin/storage upgrade // Upgrade MySQL Schema

升级脚本 http://www.phabricator.com/rsrc/install/update_phabricator.sh 建议大家先在测试环境下 update,也可参考一步步操作实验。

数据库patch和升级脚本在 phabricator/resources/sql/autopatches 在这里可找到一些Hack方法,如重建缺失的表、Fixing schema issues...

开发

Phabricator开发者

文档

cd phabricator/ $ ./bin/diviner generate // Creating 23564 documents. phabricator.book + contributor.book + user.book + flavor.book
cd arcanist/ $ ../phabricator/bin/diviner generate // Creating 2374 documents. arcanist.book 
cd javelin/  $ ../phabricator/bin/diviner generate // Creating 8 documents. javelin.book
cd libphutil/ $ ../phabricator/bin/diviner generate // Creating 2989 documents. libphutil.book

访问在线 Documentation Books

Redmine

Sonar

Phabricator Sonar Plugin

Jenkins

Scrum

Phabricator 之 敏捷实践

DevOps

借助 Phabricator 通过 DevOps 促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。

中文

Phabricator中文版和文档中文化。

培训

用户

更多用户 >>>

图集

链接

分享您的观点
个人工具
名字空间

变换
操作
导航
工具箱