SVN+Trac(VisualSVN-Server-2.1.4+Trac-0.12.1.win32) 安装手记

SVN+Trac(VisualSVN-Server-2.1.4+Trac-0.12.1.win32) 安装手记

文/arkelee

 

VisualSVN官方有Trac插件,集成了python和trac0.11,但不提供技术支持。想要即装即用的请出门右转到官网下载:
http://www.visualsvn.com/server/trac/

我当时放弃,就是为了使用trac 0.12版,有两个原因,第一支持多仓库,第二中文支持完善。
Trac因为各个模块相互的版本依赖关系以及之间的升级同步问题,并没有一个最新的集成包可以即装即用。本来我可以将我设置好的做成包分享出来,但秉着授人以鱼不如授之于渔的精神,详细列出我的安装手记,其中的版本我都是从各官网下的最新版(除了Python),因此大家需要的时候可以自行下载各个组件按照步骤安装。

 

1. SVN服务器端
VisualSVN-Server-2.1.4.msi
集成了Subversion 1.6.13,Apache 2.2.13
2. SVN客户端
TortoiseSVN-1.6.11.20210-win32-svn-1.6.13.msi
中文语言包
LanguagePack_1.6.11.20210-win32-zh_CN.msi
3. Trac-0.12.1.win32.exe
http://trac.edgewall.org/
4. Trac依赖包
* 是Trac0.12版本依赖要求
   是我使用的包
   $ 是控制台命令
* Python, version >= 2.4 and < 3.0
   python-2.6.6.msi
* setuptools, version >= 0.6
   setuptools-0.6c11.win32-py2.6.exe
* Genshi, version >= 0.6
   Genshi-0.6.win32.exe
* docutils, version >= 0.3.9 for WikiRestructuredText.
   $ esay_install docutils
* Pygments for syntax highlighting.
   $ easy_install Pygments-1.3.1-py2.6.egg
   $ easy_install pytz-2010l-py2.6.egg

* Babel-0.9.5.win32.exe

5. 以上都按照Trac官方安装说明,按部就班即可,下面是将Subversion与Trac集成。

Trac官网介绍的都是以Apache做例子的,但是因为我之前已经安装的了VisualSVN,所以想使用VisualSVN+Trac。
VisualSVN官网给到包使用的是mod_python,这个包已经停止开发了,Trac官网建议使用mod_wsgi。
VisualSVN Server集成的是Apache+Subversion+WindowsMSC,但是没有提供Python绑定包。
http://alagazam.net/上有比较全的Subversion发布包,包括各种绑定,不过因为是VC++6编译器编的,跟VisualSVN不兼容,我们为了要使用它的Python绑定,连可执行文件都要一起替换。
http://alagazam.net下载两个包svn包和svn-py包:
 svn-win32-1.6.13.zip
解压然后拷贝bin文件夹下所有dll文件到VisualSVN对应bin文件夹
   $ copy /y /bin/*.dll  /VisualSVN Server/bin/
 svn-win32-1.6.13_py.zip
解压然后分别拷贝libsvn和svn文件夹下所有文件到Python安装路径的/Lib/site-packages/文件夹。
将_*.dll后缀名改为pyd
   $ cd libsvn
   $ copy * D:/Python26/Lib/site-packages
   $ ren _*.dll _*.pyd
   $ cd svn
   $ copy * D:/Python26/Lib/site-packages

6. 至此安装完成,下面初始化Trac工作目录,如下
A new environment is created using trac-admin:
 $ trac-admin /path/to/myproject initenv
 $ trac-admin /path/to/myproject deploy /tmp/deploy

7. 修改trac.ini
for trac.ini
[trac]
repository_sync_per_request =

[repositories]
project.dir = /var/repos/project
project.description = This is the ''main'' project repository.
project.type = svn
project.url =
http://example.com/svn/project
lib.dir = /var/repos/lib
lib.description = This is the secondary library code.
lib.type = svn
lib.url =
http://example.com/svn/lib
.alias = project
.hidden = true

8. 下载并设置mod_wsgi
将最新版的mod_wsgi文件重命名为mod_wsgi.so,复制到/VisualSVN Server/bin文件夹下
mod_wsgi-win32-ap22py26-3.3.so => mod_wsgi.so [../VisualSVN Server/bin]

9. 编辑VisualSVN Server的conf(实际是集成的Apache)
打开 ../VisualSVN Server/conf/httpd-custom.conf
加入以下
LoadModule wsgi_module bin/mod_wsgi.so
LoadModule authz_user_module bin/mod_authz_user.so

WSGIScriptAlias /trac D:/Trac/cgi-bin/trac.wsgi
<Directory D:/Trac>
   WSGIApplicationGroup %{GLOBAL}
#    Order deny,allow
#    Allow from all
</Directory>

<Location '/'>
  AuthType Basic
  AuthName "Trac"
  AuthUserFile D:/Repositories/htpasswd
  Require valid-user
</Location>

10. 设置trac与svn仓库的同步,这里设置成仓库的任意改变都将更新trac资料库
$trac-admin $ENV repository resync '*'

11. 别忘了添加系统变量和系统路径
PYTHONHOME=%ProgramFiles%/Python26

PATH=
%SystemRoot%/system32;%SystemRoot%;%SystemRoot%/System32/Wbem;D:/Program Files/VisualSVN Server/bin;D:/Program Files/TortoiseSVN/bin;D:/Dev/Python26;D:/Dev/Python26/Scripts;

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值