网站搜索

Phabricator - 适用于 Linux 的开源强大“项目管理”工具


Phabricator是一个开源应用程序,可以帮助软件公司创建/构建更好的软件,它使用PHP语言构建,并在Linux、MacOSX的Apache 2.0开源许可证下可用,并且可以在任何平台上运行,它甚至可以在 Windows 中运行,但它完全基于 Linux 支持。 Facebook 之前就使用过 Phabricator。 phabricator 的第一个版本是由 facebook 构建的,具有许多功能,例如审查和审计代码、跟踪错误等。

我们可以使用 phabricator 作为存储库,就像 gitsvn 一样。有多种隐私设置可用于保护特定开发团队之间的代码。在最终确定代码之前,我们可以审查同事的代码。

我希望每个人都了解 git,如果不了解,请快速查看下面的 GIT 文章,其中解释了如何使用它。

  1. 安装 GIT 以在 GITHub 存储库上创建您自己的项目

与 git 一样,phabricator 也有很多功能,被 Facebook、Dropbox、Groupon 等大多数流行公司用来开发 Web 应用程序。

要求

Phabricator 可以在普通计算机上运行,需要安装以下软件包。我们不需要大量资源的规范。

  1. Apache2.2.7或更高版本
  2. MySQL 和 PHP 5.2 或更高版本
  3. Git 和一些 php 扩展。

注意:Phabricator 只能安装在整个域 (howtoing.com) 或子域 (phabricator.howtoing.com) 上。您无法将其安装到任何现有域的特定路径,例如“howtoing.com/phabricator”。

第 1 步:安装所需组件

有可用于在基于 Ubuntu 和 Redhat 的 Linux 中进行设置的脚本,如果您不熟悉 Linux,请选择此选项。

  1. RedHat 衍生品 – http://www.phabricator.com/rsrc/install/install_rhel-derivs.sh
  2. Ubuntu 衍生品 – http://www.phabricator.com/rsrc/install/install_ubuntu.sh

如果您是高级用户,您只需要设置一个 LAMP 服务器来运行 phabricator。好的,现在让我们开始在 RHEL/CentOS 和 Ubuntu/Debian 上安装 Phabricator。

在 RHEL/CentOS 上

安装 LAMP 服务器并在安装时包含一些 php 扩展。

yum install mysql-server httpd git php php-mysql php-gd php-curl php-apc php-cli -y
在 Ubuntu/Debian 上
sudo apt-get install mysql-server apache2 git-core git php5 php5-mysql php5-gd php5-curl php-apc php5-cli -y

注意:在基于 Ubuntu 的发行版上,安装过程中会要求您输入 MySQL 的 root 密码。

第 2 步:下载 Phabricator 文件

一旦安装了上述所有内容,现在选择安装目录。这里我将在 Apache 目录的 DocumentRoot 下创建一个名为“myprojectapp”的目录。

mkdir /var/www/html/myprojectapp		[On RedHat]

sudo mkdir /var/www/myprojectapp		[On Ubuntu]

如果您正在安装,作为普通用户,您需要在 Apache 组中添加当前用户(在我的例子中为“howtoing”)以获得写入权限。如果切换到root用户,此步骤可以忽略。

chown -R tecmint:apache /var/www/html		[On RedHat]
sudo chown -R tecmint:www-data /var/www	[On Ubuntu]	

然后导航到新创建的目录,即 myprojectapp

cd /var/www/html/myprojectapp			[On RedHat]

cd /var/www/myprojectapp			[On Ubuntu]

现在,开始从官方 git 存储库中提取 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

步骤 3:为 Phabricator 配置 Apache

在基于 Ubuntu 的发行版上,您需要启用 mod_php、mod_rewrite 和 mod_ssl 模块,在安装过程中大多数这些模块默认启用,但我们需要确认。

sudo a2enmod rewrite
sudo a2enmod ssl

一旦启用这些模块,接下来重新启动 Web 服务器以反映更改。

sudo /etc/init.d/apache2 restart		[On Ubuntu]

接下来,在 Apache 配置文件中创建一个单独的虚拟主机。

vi /etc/httpd/conf/httpd.conf			[On RedHat]

sudo nano /etc/apache2/sites-available/phabricator.conf	[On Ubuntu]	

在文件底部附加以下 Virtualhost 条目,并更改 DocumentRoot 路径以匹配 phabricator 文件的确切位置。

<VirtualHost *:80>
        ServerAdmin [email 
        ServerName phab.tecmintlocal.com
        DocumentRoot /var/www/html/myprojectapp/phabricator/webroot
        RewriteEngine on
        RewriteRule ^/rsrc/(.*)     -                       [L,QSA]
        RewriteRule ^/favicon.ico   -                       [L,QSA]
        RewriteRule ^(.*)$          /index.php?__path__=$1  [B,L,QSA]
<Directory "/var/www/html/myprojectapp/phabricator/webroot">
        Order allow,deny
        Allow from all
</Directory>
</VirtualHost>

在 Ubuntu 上,您需要使用以下命令启用新创建的虚拟主机条目。对于基于 RedHat 的系统,无需启用任何内容。

sudo a2ensite phabricator.conf

最后,重新启动 Apache 服务以反映新的更改。

service httpd restart				[On RedHat]

sudo /etc/init.d/apache2 restart		[On Ubuntu]

步骤 4:为 Phabricator 配置 MySQL

现在,是时候配置 MySQL 了,但在进行设置之前,请确保您的 MySQL 正在运行并且能够连接到它。这样,您就可以将 mysql 设置加载到其中。

cd /var/www/html/myprojectapp/phabricator/		[On RedHat]

cd /var/www/myprojectapp/phabricator/			[On Ubuntu]

./bin/config set mysql.host localhost
./bin/config set mysql.user root
./bin/config set mysql.pass mjackson

接下来,运行存储升级脚本以将数据库架构加载到其中。处理时,它会提示您按“y”继续,这将花费很少的时间来完成数据架构的设置。

./bin/storage upgrade --user root --password mjackson

一旦,方案添加到mysql,重新启动服务以采用新设置。

service mysql restart

sudo service mysql restart

第 5 步:配置 Phabricator Web UI

现在您可以在以下位置访问 Web UI,但我们需要创建一个管理员登录帐户。

http://phab.tecmintlocal.com/

OR

http://ipaddress

如果未显示上述管理员设置页面,我们需要从终端手动创建管理员登录。仅当我们收到因管理员帐户未定义而导致的错误时才需要执行此步骤。

./bin/accountadmin

创建管理员帐户后,您可以使用相同的凭据登录管理部分。登录后,您可以在左上角看到一些设置问题,需要在开始使用之前解决。

以下是一些修复步骤,每个问题都可以很容易地解决,因为他们指出了如何解决它。

总共有 10 个设置问题,如下图所示。

在这里,我无法展示如何解决每个问题,但会尝试展示如何解决错误页面中提到的问题之一。我们来看第一个问题,MYSQL STRICT_ALL_TABLES Mode Not Set,点击链接将获得如何解决该问题的说明。

因此,让我们按照页面中所述的说明进行操作。打开并编辑 mysql 配置文件。

/etc/my.cnf		[On RedHat]

sudo vim /etc/mysql/my.conf	[On Ubuntu]

接下来,将代码附加到conf文件的mysqld部分下,这是我们单击“MYSQL STRICT_ALL_TABLES Mode Not Set”时得到的代码。

sql_mode	= STRICT_ALL_TABLES
ft_min_word_len	= 3

解决每个错误后,您必须重新启动 MySQL 和 Apache 服务以反映新的更改。

------------ On Red Hat Systems  ------------
service mysqld restart
service apache restart


------------ On Ubuntu Systems  ------------
sudo service mysql restart
sudo service apache2 restart

解决所有问题后,您可以再次登录面板并检查状态,您将看到“准备使用”消息。

第 6 步:浏览 Phabricator 功能

您可以看到一些用户可用的功能,如下图所示。

要创建普通用户帐户,请单击左上角的图标,然后向下滚动页面,然后单击“人员”。现在要创建新用户,我们必须单击“创建新用户”。

步骤 7:恢复 Phabricator 管理员密码

如果您忘记了管理员密码并且想要恢复它,只需按照以下命令操作即可。

./bin/auth recover tecmint

接下来,复制给定的访问代码并访问要恢复的 URL,如下图所示。

到目前为止,我们已经成功安装并配置了“Phabricator”开源项目管理工具,没有出现任何问题。我希望您的设置也有任何错误,如果有任何错误请通过评论告诉我,我很乐意帮助您。

http://phabricator.org/