Trac作為項目管理的重要工具,為團隊協助注入了大量的互動。
Trac的介紹可以參考官方網站:http://trac.edgewall.org/。
簡單而言,它是最輕量級的項目管理系統,它提供以下功能:
1、Wiki,簡單的文檔編輯與文檔分享;
2、Timeline,跟蹤最近項目更新;
3、Roadmap,項目狀況;
4、Browse Source,源碼檢視,更新檢視;
5、Ticket,傳票系統。
==========================================
Trac的安裝
官方網站的安裝說明:http://trac.edgewall.org/wiki/TracInstall
必要依賴:1、python;2、setuptools;3、Genshi;4、資料庫(可以使用檔案夾形式的)
可選依賴:1、subversion;2、web服務,如httpd,也可以用buildin的服務tracd,建議使用httpd。
=================================================================
Trac項目的生成與基本配置
$ mkdir /var/www/trac
$ trac-admin /var/www/trac/search-proxy initenv
注意:search-proxy為項目目錄,之後的配置都在目錄中進行,trac是基于單個項目進行管理的。
由于使用httpd進行管理,我們賦予目錄整體apache權限
$ chown -R apache:apache /var/www/trac
配置httpd,使其可以被通路
<Location /trac>
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir /var/www/trac
PythonOption TracUriRoot /trac/
PythonOption PYTHON_EGG_CACHE /tmp/
</Location>
<LocationMatch "/trac/[^/]+/login">
AuthType Basic
AuthName "Trac Authorization Realm"
#以下為LDAP服務配置
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
#LDAP連接配接
AuthLDAPURL "ldap://199.155.122.90:10389/ou=users,dc=taotaosou.com?cn?sub?(objectClass=person)"
require valid-user
</LocationMatch>
其中LDAP相關配置類似SVN,可以參考之前的文章,此處有效使用者為登入使用者。
$ service httpd restart
打開頁面:http://your-server/trac 則出現項目清單,點選可進入相關項目。最基本的配置已經完成。
抽取靜态資源:
$ trac-admin /var/www/trac/search-proxy deploy /var/www/trac/search-proxy
據說可以提高性能,此處我主要用來添加logo圖檔。
$ cp logo.png /var/www/trac/search-proxy/htdocs
修改配置檔案conf/trac.ini
[header_logo]
alt = Taotaosou
height = -1
link = http://199.155.122.90/trac/search-proxy
src = site/logo.png
width = -1
重新整理頁面可發現logo已經生效,至此基本的安裝與配置已經完成
================================================================
Trac項目配置
授權
假設admin為目前項目可登入使用者(配置在LDAP中)
$ trac-admin /var/www/trac/search-proxy permission add admin TRAC_ADMIN
具體詳細的配置見使用者指南:http://trac.edgewall.org/wiki/TracGuide
以下解答SVN配置:
進入svn管理頁面:http://199.155.122.90/trac/search-proxy/admin/versioncontrol/repository
添加本地的svn位址/var/www/svn/search-proxy,并起名search-proxy,填寫url http://199.155.122.90/svn/search-proxy
trac-admin /var/www/trac/search-proxy/ repository resync search-proxy
即可完成同步,注意:必須開啟相關的插件,否則報錯。
Resyncing repository history for search-proxy...
17 revisions cached.
Done.