一个合适的项目管理的平台,对于项目管理非常重要,通过分析,发现利用trac集成subversion,可以通过web方式,实现代码浏览、bug管理、wiki支持,于是进行了安装的尝试,通过各种软件的集成和配置,这个平台终于搭建完成了,过程如下:
Python2.5.msi
setuptools-0.6c11.win32-py2.5.exe
httpd-2.2.15-win32-x86-openssl-0.9.8m.msi
CollabNetSubversion-server-1.6.9-1.win32.exe
mod_python-3.3.1.win32-py2.5-Apache2.2.exe
svn-python-1.6.6.win32-py2.5.exe
注意版本的匹配问题,否则在配置的过程中会报错。
运行httpd-2.2.15-win32-x86-openssl-0.9.8m.msi,默认安装即可,默认的端口是80。
1)运行CollabNetSubversion-server-1.6.9-1.win32.exe,默认安装即可,成功后会生成一个自带的Apache服务器,但是,由于后面要和Trac进行集成,最好利用第2步独立按照的Apache服务器。
2)配置subversion库,利用指令生成配置库:
cmd>svnadmin create c:\rep
3)生成访问库的用户名和他们的控制权限
SVN是利用Apache的用户管理作为自己的用户管理,利用Apache的htpasswd指令生成用户的控制文件:
cmd>htpasswd -cm c:\rep\user.txt admin
//用htpasswd命令创建用户(admin),同时生成密码认证文件,c参数为create,m参数为MD5加密方式
cmd>htpasswd -m c:\rep\user.txt test
//用htpasswd命令创建用户(test),注意如果在这时加入c参数会覆盖掉之前创建的用户及文件。
在C:\rep下新建文本文件access.txt。建议用UtralEdit或EditPlus编辑工具打开,若用记事本打开,注意不要勾上“格式”里的“自动换行”,输入以下内容:
[/]
admin = rw
test = r
* =
4)配置Apache和subversion之间的连接
首先来到Subersion的安装目录,进入它的bin目录,我们会发现如下两个文件:
mod_authz_svn.so
mod_dav_svn.so
我们把这两个文件复制一下,粘帖到apache的安装目录下的modules文件中,然后我们再打开apache安装目录下的conf文件夹,打开httpd.conf文件.增加如下两行:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
注意,由于dav_svn需要dav_module的支持,所以要确保下面这一行没有被注释,并且保证在dav_svn之前加载:
LoadModule dav_module modules/mod_dav.so
然后模块的设置就完成了,下面我们要设置SVN的目录,以使我们的apache能知道访问不同的URL的时候,它去哪里寻找这个URL所对应的SVN目录.
在httpd.conf文件中,增加如下内容:
<Location /rep>
DAV svn
SVNPath C:\rep
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile "C:\rep\user.txt"
AuthzSVNAccessFile "C:\rep\access.txt"
Require valid-user
</Location>
5)通过地址:http://localhost/rep就可以访问到SVN,并在登录时需要输入用户名和密码。
1)由于Trac是在Python的平台上运营,所以,在按照和配置Trac前先按照Python2.5,全部选择默认安装即可,默认的安装位置为:c:\Python25
2)安装installtool
运行setuptools-0.6c11.win32-py2.5.exe,它会自动找到Python的安装目录,默认安装即可,会在Python中生成easy-install.exe工具(具体的位置为:c:\Python25\Scripts)
3)安装Trac
利用installtool完成Trac-0.11 的下载和安装:
cmd> easy_install http://svn.edgewall.org/repos/trac/tags/trac-0.11
会安装Trac-0.11和Genshi
4)按照Trac和Subversion服务器之间的连接器
运行svn-python-1.6.6.win32-py2.5.exe,默认安装即可。
5)配置Trac
安装成功Trac后,在C:\Python25\Scripts目录下会出现tracd.exe、tracd-admin.exe等文件,利用tracd-admin.exe配置一个Trac的目录:
cmd> tracd-admin.exe c:\trac initenv
在按照的过程中,会需要提供以下的内容:
project Name:默认为 My Project
代码库:默认为SVN(subversion)
SVN地址:http://localhost/rep(我的SVN配置)
6)测试安装是否成功
在命令行运行:tracd --port 8000 c:/trac
通过web browser 浏览http://localhost:8000/出现选择可用project的界面,选择进入Trac界面成功,则为配置成功。
1)在trac和Apache2.2按照完成后,运行mod_python-3.3.1.win32-py2.5-Apache2.2.exe,按装mod_python.so,完成后,在Apache2.2的httpd.conf文件中,添加:
LoadModule python_module modules/mod_python.so
2)在httpd.conf文件的末尾添加:
<location /trac>
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv c:/trac
PythonOption TracUriRoot /trac
</location>
<location /trac/login>
AuthType Basic
AuthName myjavatrac
AuthUserFile c:/trac/conf/trac.passwd
Require valid-user
</location>
第一段配置,联系apache和trac;第二段配置,增加trac登陆时的认证。
3)这里共享了前面建立的用户(trac利用Apache的认证作为自己的认证方式):
4)给admin用赋予TRAC_ADMIN的权限:
trac-admin c:/trac permission add admin TRAC_ADMIN
以上配置完成后,就可以实现trac和subversion、Apache之间的集成和应用了。