VisualSVN Server+Trac集成安裝(圖文版)
團隊開發過程中,Subversion是首選的源碼版本控制軟件,Trac是基于網頁界面的項目管理和缺陷最終的軟件,最重要的是它們都是開源的。
- Subversion在linux下配置較為繁瑣,幸好Windows下有免費的VisualSVN Server可以使用,它簡化了安裝,提供簡單的下一步安裝方式。具體下載地址
- Trac官方網站提供了下載,但要與VisualSVN Server集成,最好從VisualSVN網站上下載Trac軟件。具體下載地址。安裝說明是英文的。
- 有朋友問到如何給用戶加Admin權限,具體見文章底部。 </ul> </div> 下面介紹一下VisualSVN Server+Trac集成安裝具體步驟:
- 下載VisualSVN Server 2.6.4或以上版本。
- 使用默認的設置安裝,如果端口443沖突就換成8443,沒有域服務器(一般都是對等網)的選擇Subversion認證方式。
- 安裝成功后,打開VisualSVN Server Manager,新建版本庫,例如MyProject(這里改成你自己的項目名,記住下面所有的操作中只要有MyProject,都要替換成你自己的項目名)
- 使用Subversion認證方式,至少要創建一個用戶。
- 下載Trac,網址同上:trac+subversion集成安裝包
- 解壓到 %VISUALSVN_SERVER% 目錄,一般為:C:\Program Files\VisualSVN Server
- 創建C:\Trac目錄(可更換為其它目錄,但下面的C:\Trac都要替換成你自己的目錄)
- C:\Trac目錄的安全性設置:增加Network Service用戶,權限為完全控制
- 打開命令行窗口(運行 cmd),執行:"%VISUALSVN_SERVER%trac\trac-admin.bat" C:\Trac\MyProject initenv 注意:如果你的項目名不是MyProject,目錄不在C:\Trac,一定要替換成你自己的,下面的也類似,不再重復。
- 繼續執行下面的命令,用來集成Trac項目與具體的Subversion項目連接。"%VISUALSVN_SERVER%trac\trac- admin.bat" c:\Trac\MyProject repository add MyProject C:\Repositories\MyProject svn
- 非常關鍵,設置不對,在Trac里看不到用戶對源碼的修改版本。找到Subversion默認安裝的版本庫目錄,一般為C:\Repositories\MyProject\hooks,新建一個post-commit.cmd文件,加入如下文字:"%VISUALSVN_SERVER%trac\trac-admin.bat" C:\Trac\MyProject changeset added "%1" "%2"
- 非常關鍵,在上一步的目錄中,另外新建一個post-revision.cmd文件,加入如下文字:@"%VISUALSVN_SERVER%trac\trac-admin.bat" C:\Trac\MyProject changeset modified "%1" "%2"
- 增加系統變量:PYTHONHOME=C:\Program Files\VisualSVN Server\trac\python,具體的和你安裝目錄一致即可。
- 找到%VISUALSVN_SERVER%conf\httpd-custom.conf文件(C:\Program Files\VisualSVN Server\conf\),如果使用的是Subversion認證方式(就是默認方式),在文件中加入:
LoadModule python_module "trac/python/mod_python_so.pyd"
LoadModule authz_user_module bin/mod_authz_user.so
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir C:\Trac
PythonOption TracUriRoot /trac
AuthName "Trac"
AuthType Basic
AuthBasicProvider file
AuthUserFile "C:/Repositories/htpasswd"
Require valid-user
</span></li>
- 如果是Windows集成認證,則加入:
LoadModule python_module "trac/python/mod_python_so.pyd"
LoadModule authz_user_module bin/mod_authz_user.so
</li>
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir C:\Trac
PythonOption TracUriRoot /trac
AuthName "Trac"
AuthType VisualSVN
# Set the option's value to on if Windows Basic Authentication
# is enabled, otherwise set it to off.
AuthnVisualSVNBasic on
# Set the option's value to on if Windows Integrated Authentication
# (available in the Enterprise Edition) is enabled, otherwise set it to off. AuthnVisualSVNIntegrated on
Require valid-user
- 最好是重啟電腦,因為環境變量要生效才可以,另外,VisualSVN Server也需要重啟,所以直接重啟電腦最好。以免出現500錯誤。
- 訪問 https://localhost:443/trac/MyProject or https://localhost:8443/trac/MyProject
- 如果SVN服務器已經運行后才安裝的Trac服務器,需要使用同步命令來更新Trac服務器的內容:"%VISUALSVN_SERVER%trac\trac-admin.bat" C:\Trac\MyProjects repository resync "*"
- 本文默認集成了svn的用戶名和密碼,所以Trac服務器不需要額外的用戶名和密碼,但如何把現有的svn用戶名變成Trac服務器的超級用戶呢?
</ol>
具體作法仍然是使用 trac-admin命令:"%VISUALSVN_SERVER%trac\trac-admin.bat" C:\Trac\MyProjects permission add admin TRAC_ADMIN - 如果是Windows集成認證,則加入: