执行命令:cd /usr/local/subversion-1.6.12;make swig-py;
正确结果:mkdir /usr/local/subversion-1.6.12/subversion/bindings/swig/python/libsvn
执行命令:cd /usr/local/subversion-1.6.12;make install-swig-py;
正确结果:Compiling /usr/local/subversion/lib/svn-python/svn/wc.py
4. 设置Subversion
执行命令:echo /usr/local/subversion/lib/svn-python > /usr/lib/python2.4/site-packages/subversion.pth
执行命令:rm -rf /usr/sbin/svn;cp /usr/local/subversion/bin/svn /usr/sbin/
5. 检查安装结果
安装成功的话,/usr/local/apache/modules 里应该有mod_dav_svn.so和mod_authz_svn.so。并且在/usr/local/apache/conf/httpd.conf能够检索到下列内容:
六、 设置Subversion仓库
1. 准备工作
需要一个新的用户用来管理Subversion。特别需要说明的是这个用户将会成为Subversion和Trac两个系统的属主。
执行命令:useradd pocsvn
2. 设置仓库环境
执行命令:rm -rf /home/pocsvn
执行命令:mkdir /home/pocsvn
执行命令:mkdir /home/pocsvn/project
执行命令:/usr/local/subversion/bin/svnadmin create /home/pocsvn/project/poc
3. 导入初始文件
/root/Tools/SVNTest为自己选择的初始导入内容,这一内容的SVN号为1
执行命令:/usr/local/subversion/bin/svn import /root/Tools/SVNTest file:///home/pocsvn/project/poc -m "my note"
4. 进阶配置
更改仓库路径属主。
执行命令:chown -R pocsvn:pocsvn /home/pocsvn/project
执行命令:chmod -R 700 /home/pocsvn/project
变更配置文件属主用户
执行命令:sed -i 's/User daemon/User pocsvn/g' /usr/local/apache/conf/httpd.conf
执行命令:sed -i 's/Group daemon/Group pocsvn/g' /usr/local/apache/conf/httpd.conf
为Apache添加连接
执行命令:echo <Location /svn>
DAV svn
SVNParentPath /home/pocsvn/project
AuthType Basic
AuthName \"Welcome BWBuilder SVN system! \"
AuthUserFile
/home/pocsvn/project/passwd
AuthzSVNAccessFile /home/pocsvn/project/poc/conf/authz
Require valid-user
</Location> >> /usr/local/apache/conf/httpd.conf
执行命令:httpd -k restart
执行命令:touch /home/pocsvn/project/passwd
5. 登录及权限配置
SVN默认方式
执行命令:/usr/local/apache/bin/htpasswd -c /home/pocsvn/project/passwd ASer(手动设置SVN用户ASer的密码)
执行命令:vim /home/pocsvn/project/poc/conf/authz
在[groups]后添加下列内容
admin = ASer
[poc:/]
ASer = rw
@admin = rw
[/]
* = r
LDAP方式
在/usr/local/apache/conf/httpd.conf文件结尾填写如下内容:
<Location /svn/repo>
DAV svn
SVNPath /home/pocsvn/project/repo
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
AuthType Basic
AuthName "Welcome BWBuilder SVN system!"
AuthLDAPURL "ldap://10.10.1.28/ou=people,dc=ict,dc=ac,dc=cn?uid"
Require valid-user
</Location>
这里步骤应放在最后执行。
执行命令:httpd -k restart
6. 测试Subversion
打开浏览器输入http://###.###.###.###:80/svn/poc/
如果打开的页面显示的是之前手动导入的文档,则SVN配置成功。
七、 安装Trac
1. 环境检查
Setuptools
Setuptools是一个基于python软件的下载安装工具。以下在安装Trac过程中会使用setuptools中的easy_install。
检验Setuptools是否已经安装:
如果有如图显示,说明setuptools已经安装。
如果没有安装可以如下安装:
python ez_setup.py
Genshi
执行命令:easy_install Genshi;
Py
SQLite
SQLite3的python访问接口。
以下的命令可以检验PySQLite是否已经安装:
如上图所示,表示PySQLite已经安装。
如果没有安装,可以如下安装:
执行命令:cd pysqlite-2.6.0; python setup.py install
注:此处最好手动安装一次,否则有可能在后面配置的时候失败。
SWIG
可以用以下命令确定SWIG是否已经安装:
如果如上图所示,表示SWIG已经安装。
如果没有,则表示第五步执行异常。需跳回第五步重新安装。
Subversion with SWIG python bindings
Subversion可以用svn –version确定是否已经安装:
Subversion的SWIG python binding可以用以下命令确定是否已经安装:
没有报错就说明已经安装了。
同样,如果没有,则表示第五步执行异常。需跳回第五步重新安装。
2. 安装Trac
执行命令:easy_install Trac
3. 配置Trac项目
执行命令:mkdir /data;mkdir /data/myproject;trac-admin /data/myproject/bwfs initenv;
注:笔者这里安装的是trac 0.12版本,安装的过程会提示输入项目名,这里以BWFS为例,第二项会要求选择数据,这里直接按回车使用默认的sqlite数据库就可以。
4. 独立运行Trac
配置完成后Trac就可以独立运行了:
tracd –port 8000 /subversion/trac/bwfs
http://###.###.###.###/bwfs
5. 配置TRAC_ADMIN权限
执行命令:trac-admin /data/myproject/bwfs permission add #### TRAC_ADMIN
6. 配置Trac挂接SVN
将mv post-commit.tmpl post-commit文件复制到/data/myproject/bwfs下。
执行命令:mv post-commit.tmpl post-commit
执行命令:chmod 755 post-commit
然后在编辑post-commit脚本:
REPOS="$1"
REV="$2"
TRAC_ENV="/data/myproject/bwfs"
/usr/bin/python /usr/local/bin/trac-post-commit-hook -p "$TRAC_ENV" -r "$REV"
最后复制trac-post-commit-hook文件到/usr/local/bin目录。
八、 在Apache中运行Trac
1. 配置mod_python
执行命令:cd /usr/local/; tar -zxf /root/Tools/mod_python-3.3.1.tgz;
执行命令:cd /usr/local/mod_python-3.3.1;./configure --with-apxs=/usr/local/apache/bin/apxs --with-python=/usr/bin/python;