由于工作變動,需要搭建新的缺陷跟蹤平台,最終選中了trac,以下是親測可用的安裝方法。
一、SVN的安裝和配置
詳細可以參考http://wiki.ubuntu.org.cn/SubVersion
1、安裝
1 | $sudo apt-get install subversion |
2 | $sudo apt-get install libapache2-svn //這個是安裝apache部分,如果不使用http協定可以不必裝這個. |
2、配置svn伺服器端
首先,建立subversion使用者組,并且将www-data和您自己這兩個使用者加入該組.
1 | $sudo addgroup subversion |
2 | $sudo usermod -G subversion -a www-data |
其次,建立svn的根位置,
然後,開始一個新的知識庫,
2 | $sudo chown -R root:subversion npmonitor//這裡要給www-data添權重限,因為我們後面要用apache |
3 | $sudo chmod -R g+rws npmonitor//這個是為了賦予組成員對所有新加入檔案倉庫的檔案擁有相應的權限 |
4 | $sudo svnadmin create /home/svn/npmonitor//開始一個新的知識庫 |
3、配置SVN通路方式
Subversion 檔案倉庫可以通過許多不同的方式進行通路(Check Out,簽出)——通過本地硬碟,或者通過各種網絡協定。
這裡通過 WebDAV 協定通路 SVN 檔案倉庫,必須配置您的 Apache 2 Web 伺服器。您必須加入下面的代碼片段到您的 /etc/apache2/mods-available/dav_svn.conf中:
01 | <Location /svn/npmonitor> |
03 | SVNPath /home/svn/npmonitor |
05 | AuthName "Subversion Repository" |
06 | AuthUserFile /etc/apache2/dav_svn.passwd |
07 | # To enable authorization via mod_authz_svn |
08 | AuthzSVNAccessFile /etc/apache2/dav_svn.authz |
接下來,您需要建立 /etc/apache2/dav_svn.passwd 檔案。該檔案包含了使用者授權的詳細資訊。要添加使用者,您可以執行下面的指令:
1 | $sudo htpasswd -c /etc/apache2/dav_svn.passwd user_name |
它會提示您輸入密碼,當您輸入了密碼,該使用者就建立了。
接下來,您需要建立 /etc/apache2/dav_svn.authz 檔案。該檔案用來配置其通路控制。
如建立dav_svn.authz檔案,再輸入
這個是容許使用者user_name通路npmonitor下的檔案的讀寫權限。
詳細的配置可以參考/home/svn/npmonitor/conf下的authz檔案。
當您添加了上面的内容,您必須重新起動 Apache 2 Web 伺服器,請輸入下面的指令:
$sudo /etc/init.d/apache2 restart
再可以使用http://hostname/svn/npmonitor來測試下你的配置是否正确。
二、TRAC安裝和配置
詳細安裝配置教程參考http://trac.edgewall.org/wiki
1、安裝
1 | $sudo apt-get install trac |
2、建立配置Trac環境
1 | $sudo trac-admin /home/trac initenv //除了項目名稱(npmonitor)和svn倉庫路徑(/home/svn/npmonitor)以外,其餘可使用預設. |
2 | $sudo chown -R root:www-data trac //使用www-data:www-data |
3 | $sudo chmod -R g+rsw trac |
3、配置Apache
建立Trac環境後,還需要在Apache2中進行相應的配置才能正常使用。配置Trac有兩種方式:做為CGI(CGI、WSGI、FCGI)以及使用mod-python。在這裡,我們使用apache2-mod-python方式來配置Apache2伺服器:
1 | $sudo apt-get install libapache2-mod-python libapache2-mod-python-doc |
再配置httpd.conf檔案,在其中添加
view source print ?
03 | PythonInterpreter main_interpreter |
04 | PythonHandler trac.web.modpython_frontend |
05 | PythonOption TracEnv /home/trac/ |
06 | PythonOption TracUriRoot /trac/ |
09 | AuthUserFile /etc/apache2/dav_svn.passwd |
當您添加了上面的内容,您必須重新起動 Apache 2 Web 伺服器,并輸入http://hostname/trac就可以看到自己的工程。