共计 6794 个字符,预计需要花费 17 分钟才能阅读完成。
说明:基于 Linux 平台的 svn 有 diff 的功能,但是字符界面的 diff 可读性太差,于是乎想升级一下 diff 的功能,正好搭建了 bugfreeforsvn,里面的建议是用 ViewVC,这个软件应该是个不错的选择,OK,不用想那么多了,let’s go……
怎么做?
1、由于需要和 svn 整合,那么之前搭建的 SVN 需要重新编译安装。
2、viewvc 是用 python 写的,为了支持 python,需要将 svn 和 python 整合起来。
3、安装 swig,用来将 Python 和 c /c++ 对接起来,如果你想了解更多,请查看:http://www.linuxidc.com/Linux/2014-01/95227.htm。
准备:
Python-2.7.6.tgz
swig-1.3.24.tar.gz
viewvc-1.1.21.tar.gz
subversion-1.6.18.tar.gz
subversion-deps-1.6.18.tar.gz
操作系统:RHEL x86_64 AS 4.6
下面 2 个软件的版本单独说明一下:这 2 个软件的版本很重要, 因为操作系统版本太老 4.6 的,其他软件如 swig,python 都不能用最新的,经过测试必须用某一时间段的版本才能完美整合,下面 2 个软件也是如此。
neon-0.29.6.tar.gz serf-0.3.0.tar.bz2
一 搭建 SVN
请参见我之前的博文 http://www.linuxidc.com/Linux/2014-01/95226.htm 。
二 重新编译安装 SVN
1、将 /usr/local/subversion 这个文件夹备份一下
mv
/usr/local/subversion
/usr/local/subversion
.bak
2、安装 python
由于 viewVC 使用 python 写的,而系统自带的版本太低,因此安装该版本。
tar xvzf Python-2.7.6.tgz
cd Python-2.7.6
./configure –prefix=/usr/local/python2
make && make install
3、安装 swig
tar xzvf swig-1.3.24.tar.gz
cd SWIG-1.3.24
./configure –prefix=/usr/local/swig \
–with-python=/usr/local/python2/bin/python
make && make install
4、安装 svn
tar xzvf subversion-1.6.18.tar.gz
tar xzvf subversion-deps-1.6.18.tar.gz
tar xzvf neon-0.29.6.tar.gz
tar xzvf serf-0.3.0.tar.bz2
cd subversion-1.6.18
rm -rf apr apr-util neon serf
cp -ar ../neon-0.29.6 neon
cp -ar ../serf-0.3.0 serf
chown -R 1000:users neon serf
./configure \
–prefix=/usr/local/subversion \
–with-apxs=/usr/local/apache2/bin/apxs \
–with-ssl \
–with-apr=/usr/local/apr \
–with-apr-util=/usr/local/apr-util \
–with-zlib=/usr/lib64 \
–with-swig=/usr/local/swig/bin/swig \
–enable-shared \
–enable-static \
PYTHON=/usr/local/python2/bin/python
make && make install
5、配置 SVN
参见我之前的博文 http://www.linuxidc.com/Linux/2014-01/95226.htm。
6、绑定 subversion
1234 cd subversion-1.6.18
make swig-py
make check-swig-py #有一个 trac 的报错,无须理会
make install-swig-py
7、添加 svn 的 python binding 安装路径到 Python 的 path 中
由于是源码安装,svn 的 python-binging 不在 python 默认的搜索路径中,默认是 /usr/local/lib/svn-python/,需要修改如下:
cd /usr/local/python2/lib/python2.7/site-packages
echo /usr/local/subversion/lib/svn-python > subversion.pth
echo /usr/local/subversion/lib >> /etc/ld.so.conf
ldconfig
8、测试 svn 模块
首先要修改 python 的可执行文件路径, 这是由于系统自带的 python 未删除。如果不修改,viewvc 在调用 python 的时候默认使用系统自带的。如果你不嫌麻烦,那么请修改 viewvc-1.1.21 安装目录下的所有脚本文件,它们的路径都是以 #!/usr/bin/python 开头的。
cd /usr/bin
mv python python.bak
ln -s /usr/local/python2/bin/python python
执行如下命令测试:
# python
Python 2.7.6 (default, Nov 29 2013, 11:32:29)
[GCC 3.4.6 20060404 (Red Hat 3.4.6-9)] on linux2
Type “help”, “copyright”, “credits” or “license” for more information.
>>> import svn.core
如果没有任何提示,就说明 OK 了。
推荐阅读:
Linux 中 Subversion 配置实例 http://www.linuxidc.com/Linux/2012-02/53109.htm
CentOS 6.2 SVN 搭建 (YUM 安装) http://www.linuxidc.com/Linux/2013-10/91903.htm
Apache+SVN 搭建 SVN 服务器 http://www.linuxidc.com/Linux/2013-03/81379.htm
Windows 下 SVN 服务器搭建和使用 + 客户端重新设置密码 http://www.linuxidc.com/Linux/2013-05/85189p5.htm
Ubuntu Server 12.04 安装 SVN 并迁移 Virtual SVN 数据 http://www.linuxidc.com/Linux/2013-05/84695.htm
Ubuntu Server 搭建 svn 服务以及迁移方法 http://www.linuxidc.com/Linux/2013-05/84693.htm
借助网盘搭建 SVN 服务器 http://www.linuxidc.com/Linux/2013-10/91271.htm
三 安装配置 ViewVC
1、安装 ViewVC
tar xvzf viewvc-1.1.21.tar.gz
cd viewvc-1.1.21
./viewvc-install
2、配置 apache
# vim /usr/local/apache2/conf/httpd.conf
在 306 行添加:
ScriptAlias /viewvc “/usr/local/viewvc-1.1.21/bin/cgi/viewvc.cgi”
ScriptAlias /query “/usr/local/viewvc-1.1.21/bin/cgi/query.cgi”
在 330 行添加:
<Directory “/usr/local/viewvc-1.1.21/bin/cgi”>
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
在最后添加:
<Location “/viewvc”>
AuthType Basic
AuthName “ViewVC Client Access”
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
AuthLDAPURL “ldap://192.168.1.226:389/dc=example,dc=com,dc=cn?uid?sub?(objectClass=*)”
Require valid-user
</Location>
3、重启 apache
/usr/local/apache2/bin/apachectl restart
4、修改 viewVC 配置文件
让 viewvc 启用 svn 的权限控制。
# vim /usr/local/viewvc-1.1.21/viewvc.conf
在如下 section 中添加:
[general]
root_parents = /home1/subversion/project: svn
因为我所有的库都在 project 目录下
[options]
authorizer = svnauthz
启用 svn 的认证
[authz-svnauthz]
authzfile = /home1/subversion/auth
认证文件的路径
5、访问 viewvc
http://localhost/viewvc
配置完成。
ViewVC 的详细介绍:请点这里
ViewVC 的下载地址:请点这里
说明:基于 Linux 平台的 svn 有 diff 的功能,但是字符界面的 diff 可读性太差,于是乎想升级一下 diff 的功能,正好搭建了 bugfreeforsvn,里面的建议是用 ViewVC,这个软件应该是个不错的选择,OK,不用想那么多了,let’s go……
怎么做?
1、由于需要和 svn 整合,那么之前搭建的 SVN 需要重新编译安装。
2、viewvc 是用 python 写的,为了支持 python,需要将 svn 和 python 整合起来。
3、安装 swig,用来将 Python 和 c /c++ 对接起来,如果你想了解更多,请查看:http://www.linuxidc.com/Linux/2014-01/95227.htm。
准备:
Python-2.7.6.tgz
swig-1.3.24.tar.gz
viewvc-1.1.21.tar.gz
subversion-1.6.18.tar.gz
subversion-deps-1.6.18.tar.gz
操作系统:RHEL x86_64 AS 4.6
下面 2 个软件的版本单独说明一下:这 2 个软件的版本很重要, 因为操作系统版本太老 4.6 的,其他软件如 swig,python 都不能用最新的,经过测试必须用某一时间段的版本才能完美整合,下面 2 个软件也是如此。
neon-0.29.6.tar.gz serf-0.3.0.tar.bz2
一 搭建 SVN
请参见我之前的博文 http://www.linuxidc.com/Linux/2014-01/95226.htm 。
二 重新编译安装 SVN
1、将 /usr/local/subversion 这个文件夹备份一下
mv
/usr/local/subversion
/usr/local/subversion
.bak
2、安装 python
由于 viewVC 使用 python 写的,而系统自带的版本太低,因此安装该版本。
tar xvzf Python-2.7.6.tgz
cd Python-2.7.6
./configure –prefix=/usr/local/python2
make && make install
3、安装 swig
tar xzvf swig-1.3.24.tar.gz
cd SWIG-1.3.24
./configure –prefix=/usr/local/swig \
–with-python=/usr/local/python2/bin/python
make && make install
4、安装 svn
tar xzvf subversion-1.6.18.tar.gz
tar xzvf subversion-deps-1.6.18.tar.gz
tar xzvf neon-0.29.6.tar.gz
tar xzvf serf-0.3.0.tar.bz2
cd subversion-1.6.18
rm -rf apr apr-util neon serf
cp -ar ../neon-0.29.6 neon
cp -ar ../serf-0.3.0 serf
chown -R 1000:users neon serf
./configure \
–prefix=/usr/local/subversion \
–with-apxs=/usr/local/apache2/bin/apxs \
–with-ssl \
–with-apr=/usr/local/apr \
–with-apr-util=/usr/local/apr-util \
–with-zlib=/usr/lib64 \
–with-swig=/usr/local/swig/bin/swig \
–enable-shared \
–enable-static \
PYTHON=/usr/local/python2/bin/python
make && make install
5、配置 SVN
参见我之前的博文 http://www.linuxidc.com/Linux/2014-01/95226.htm。
6、绑定 subversion
1234 cd subversion-1.6.18
make swig-py
make check-swig-py #有一个 trac 的报错,无须理会
make install-swig-py
7、添加 svn 的 python binding 安装路径到 Python 的 path 中
由于是源码安装,svn 的 python-binging 不在 python 默认的搜索路径中,默认是 /usr/local/lib/svn-python/,需要修改如下:
cd /usr/local/python2/lib/python2.7/site-packages
echo /usr/local/subversion/lib/svn-python > subversion.pth
echo /usr/local/subversion/lib >> /etc/ld.so.conf
ldconfig
8、测试 svn 模块
首先要修改 python 的可执行文件路径, 这是由于系统自带的 python 未删除。如果不修改,viewvc 在调用 python 的时候默认使用系统自带的。如果你不嫌麻烦,那么请修改 viewvc-1.1.21 安装目录下的所有脚本文件,它们的路径都是以 #!/usr/bin/python 开头的。
cd /usr/bin
mv python python.bak
ln -s /usr/local/python2/bin/python python
执行如下命令测试:
# python
Python 2.7.6 (default, Nov 29 2013, 11:32:29)
[GCC 3.4.6 20060404 (Red Hat 3.4.6-9)] on linux2
Type “help”, “copyright”, “credits” or “license” for more information.
>>> import svn.core
如果没有任何提示,就说明 OK 了。
推荐阅读:
Linux 中 Subversion 配置实例 http://www.linuxidc.com/Linux/2012-02/53109.htm
CentOS 6.2 SVN 搭建 (YUM 安装) http://www.linuxidc.com/Linux/2013-10/91903.htm
Apache+SVN 搭建 SVN 服务器 http://www.linuxidc.com/Linux/2013-03/81379.htm
Windows 下 SVN 服务器搭建和使用 + 客户端重新设置密码 http://www.linuxidc.com/Linux/2013-05/85189p5.htm
Ubuntu Server 12.04 安装 SVN 并迁移 Virtual SVN 数据 http://www.linuxidc.com/Linux/2013-05/84695.htm
Ubuntu Server 搭建 svn 服务以及迁移方法 http://www.linuxidc.com/Linux/2013-05/84693.htm
借助网盘搭建 SVN 服务器 http://www.linuxidc.com/Linux/2013-10/91271.htm