在 Windows 上使用 Trac on Apache - 專案建置篇
建立 Subversion 專案
建立檔案庫
建立的方式很簡單,假設現在要建立一個名為 projectname 的專案,那麼就在命令提示列視窗中輸入以下指令 (粗體字部份) :
D:\>cd Repository\svn
D:\Repository\svn>svnadmin create projectname
這樣就能建立出屬於 projectname 這個專案的檔案庫了。
註:先前提過的權限設定改由 Apache 來控管,因此不用再修改 conf 底下的檔案了。
設定 post-commit
post-commit 簡單來說就是在本地端 Commit 後,會自動執行的 hook 機制;通常是用來記錄更新的 log 或是發送 Email ,這裡則是用來自動更新測試環境的 Web 檔案。其執行的原理暫時略過,這裡先說明如何設定。
這裡我先假設 D:\wwwroot\projectname 就是我們所要更新的目的地, IIS 是以它做為執行的根目錄;當我們在本地端開發的檔案 Commit 後,就會同步這裡的檔案。
接下來的設定方式很簡單,只要把以下文字存成 post-commit.bat :
@ECHO OFF
SET SVN="D:\\appserv\\svn\\bin\\svn.exe"
SET DIR="D:\\wwwroot\\projectname\\"
CALL %SVN% update %DIR% --username website --password websitepassword --non-interactive
然後存到 D:\Repository\svn\projectname\hooks\ 下即可,其中 website 帳號在前一篇說明裡已經建立了。
註:這裡也可以更新記錄存到 log 檔案裡或是發送 Email 給相關組員,不過這邊暫時不打算弄得太複雜。
建立 Trac 專案
建立好 SVN 檔案庫以後,接下來就可以建立 Trac 專案了。
建立資料庫
請切換到 D:\AppServ\python\Scripts 路徑,並在命令提示列視窗中執行以下指令 (粗體字部份) :
切換到 D:\Appserv\python\Scripts 下,建立一個名為 projectname 的 trac 專案。
D:\Appserv\python\Scripts>python trac-admin D:\Repository\trac\projectname initenv
接著會出現以下提示文字,請依照下面的建議操作:
Project Name [My Project]> New Project (輸入專案名稱,不必和目錄名稱相同)
Database connection string [sqlite:db/trac.db]> (直接按 Enter 使用預設值)
Repository type [svn]> (直接按 Enter 使用預設值)
Path to repository [/path/to/repos]> D:\Repository\svn\projectname (輸入 Subversion 專案檔案庫的位置)
Templates directory [D:\Appserv\python\share\trac\templates]> (直接按 Enter 使用預設值)
這樣就建立好 Trac 的資料庫了。
設定預設使用者
保留 D:\Appserv\python\Scripts 的執行路徑,並在命令提示列視窗中執行以下指令 (粗體字部份) :
D:\Appserv\python\Scripts>python trac-admin D:\Repository\trac\projectname permission add admin TRAC_ADMIN
這樣會將 admin 加入 Trac 專案管理者。
如果不想讓匿名使用者在 Trac 專案有任何權限的話,就執行:
D:\Appserv\python\Scripts>python trac-admin D:\Repository\trac\projectname permission remove anonymous '*'
註:之前我測試用 * 號可以刪掉所有權限,不曉得什麼時候改成要用單引號把 * 號包起來。
然後我們再建立一個 developer 群組,同時給它需要的權限 (請自行決定相關權限) :
D:\Appserv\python\Scripts>python trac-admin D:\Repository\trac\projectname permission add developer WIKI_VIEW WIKI_CREATE WIKI_MODIFY SEARCH_VIEW TICKET_APPEND TICKET_CREATE TICKET_VIEW TIMELINE_VIEW ROADMAP_VIEW
註:如果 developer 沒有對應到 Apache 所建立的帳號時,它對 Trac 而言就是一個群組。
相關 Plugins 設定
建立好 Trac 資料庫後,就要在專案裡啟用 WebAdmin 和 AccountManager 這兩個 Plugins 。請用文字編輯器打開 D:\Repository\trac\projectname\conf\trac.ini ,把以下文字貼到 trac.ini 的最下方:
[account-manager]
password_file = D:\Repository\project-users.db
password_store = HtPasswdStore
[components]
acct_mgr.admin.accountmanageradminpage = enabled
acct_mgr.api.accountmanager = enabled
acct_mgr.htfile.htpasswdstore = enabled
acct_mgr.web_ui.accountmodule = enabled
acct_mgr.web_ui.loginmodule = enabled
acct_mgr.web_ui.registrationmodule = enabled
trac.web.auth.loginmodule = enabled
iniadmin.iniadmin.iniadminplugin = enabled
webadmin.* = enabled
這樣到時候用 admin 登入專案時,就能夠使用 Admin 功能了 (包含 WebAdmin 、 AccountManager 和 IniAdmin ) 。
補充:如果用 admin 登入後,還是看不到 Admin 功能的話,請重新啟動 Apache 。
註:這時的 logout 功能因為前面 httpd.conf 設定的關係,所以只有重新載入 Trac 的動作而無法真正登出。
總結
再一次提示重點:
-
建立 Subversion 檔案庫並且配置 post-commit 。
-
建立 Trac 資料庫,並配置權限與相關 plugins 。
以上便是完整的 Trac/Subversion 專案建置方式,每新增一個專案都要做一次。
接下來將會補上簡易的使用說明。
没有评论:
发表评论