先前 svn server 上面已經有 apache2 + svn 了,現在要加入 trac (拜 kmwang 大神的建議,招喚祭品是一顆統一布丁)
安裝 trac
在 Ubuntu 上面裝 trac 很簡單(?),只要下一行指令就好:
# apt-get install trac
安裝好以後挑個目錄 (我自己是放在 /var/local/trac 底下) 準備開新專案,基本上開新專案的方式跟 svn 差不多
# trac-admin project_name initenv
卻發生這樣的錯誤訊息:
Traceback (most recent call last):
File "trac-admin", line 21, in ?
from trac.scripts.admin import run
ImportError: No module named scripts.admi
求助 google 大神以後,應該是新舊版本的問題 (看來有人曾經在這台機器上面裝 trac 卻留下一堆垃圾),於是:
# apt-get remove trac
# find / -type d -name "trac"
先移除 trac,然後找出不必要的目錄屍體,砍除以後:
# apt-get install trac
再次測試 trac-admin 是否會出錯,這次就正常無誤了。
讓 apache 支援
設定 site-enabled
# cd /etc/apache2/sites-available
# vim trac.conf
編輯如下:
ScriptAlias /trac "/usr/share/trac/cgi-bin/trac.cgi"
<Location "/trac">
SetEnv TRAC_ENV_PARENT_DIR "/var/local/trac"
AuthType Basic
AuthName "Trac"
AuthUserFile "/etc/trac/passwd"
</Location>
Alias /trac/chrome/common "/usr/share/trac/htdocs"
<Directory "/usr/share/trac/htdocs">
Order allow,deny
Allow from all
</Directory>
DirectoryIndex trac.cgi
ErrorLog /var/log/apache2/error.trac.log
CustomLog /var/log/apache2/access.trac.log combined
--
其中 /etc/trac/passwd 可以跟 svn 指定同一個檔案。
接著連結到 apache2 的 site-enabled/ 去
# cd /etc/apache2/sites-enabled
# ln -s /etc/apache2/sites-enabled/trac.conf .
# /etc/init.d/apache2 force-reload
連上 http://yourhost/trac 看看是否能連線成功就OK了。
設定 trac 權限
# cd /var/local
# trac-admin project_name
這樣會進入 trac 設定
> permission list (查看目前權限列表)
> permission remove anonymous '*' (移除匿名使用者的所有權限)
> permission add limit TRAC_ADMIN (增加 limit 這個使用者,有 trac admin 的權限)
其他權限列表請參照 trac guide
一些應用的方法可以參考 關閉 Source Code View,其他功能都可以使用的參數設定 | Tsung's Blog
FreeBSD 使用者也可以參考這篇 在 FreeBSD 下架設 trac | Tsung's Blog
留言列表