安装 subversion

  subversion 经常被我们所使用,但由于原来的subversion服务器硬件有问题,所以需将其迁移到新服务器上。我们的是CentOS安装. 大家都说CentOS 更新慢。果然,里面自带的subversion还是1.4.2。而我们原来备份的subversion库是1.5版本的。

1.尝试在已存在的subversion  1.4.2上恢复:

[root@svnserv ~]# svnserve -d -r /root/svn
[root@svnserv ~]# svn ls svn://192.168.11.148
svn: Expected FS format '2'; found format '3'
svn: 期待文件系统(FS)格式 “2”;找到格式“3”
这是因为待恢复的subversion版本和现在CentOS安装的subversion不一致,待恢复的较新。

[root@svnserv ~]# svnserve --version
svnserve, version 1.4.2 (r22196)

2. 尝试在CentOS安装subversion 1.6.5

必须升级subversion。

查到最新稳定版为subversion-1.6.5。

如果下载源码编译,会有很多依赖的库也需要下载。所以直接下redhat AS 5 对应的rpm安装。

 
  1. [root@svnserv ~]# rpm -ivh subversion-1.6.5-1.i386.rpm  
  2. error: Failed dependencies:  
  3. libneon.so.27 is needed by subversion-1.6.5-1.i386  
  4. neon >= 0.26.1 is needed by subversion-1.6.5-1.i386  
  5. sqlite >= 3.4 is needed by subversion-1.6.5-1.i386  
  6.  
 
  1. [root@svnserv ~]# rpm -ivh neon-0.28.4-1.i386.rpm  
  2. Preparing...                ########################################### [100%]  
  3. 1:neon                   ########################################### [100%]  
  4.  

需要先在CentOS安装sqlite

 
  1. [root@svnserv ~]# rpm -ivh subversion-1.6.5-1.i386.rpm  
  2. error: Failed dependencies:  
  3. sqlite >= 3.4 is needed by subversion-1.6.5-1.i386  

CentOS安装sqlite呢?与已有版本冲突

 
  1. [root@svnserv ~]# rpm -ivh sqlite-3.5.9-2.i386.rpm  
  2. Preparing...                ########################################### [100%]  
  3. file /usr/bin/sqlite3 from install of sqlite-3.5.9-2.i386 conflicts with file from package sqlite-3.3.6-2.i386  
  4. file /usr/lib/libsqlite3.so.0.8.6 from install of sqlite-3.5.9-2.i386 conflicts with file from package sqlite-3.3.6-2.i386  
  5.  
  6. [root@svnserv ~]# rpm -qa | grep sqlite  
  7. python-sqlite-1.1.7-1.2.1  
  8. sqlite-devel-3.3.6-2  
  9. sqlite-3.3.6-2  
  10.  

卸载?有依赖

 
  1. [root@svnserv ~]# rpm -e sqlite-3.3.6-2  
  2. error: Failed dependencies:  
  3. libsqlite3.so.0 is needed by (installed) php-pdo-5.1.6-23.el5.i386  
  4. libsqlite3.so.0 is needed by (installed) sqlite-devel-3.3.6-2.i386  
  5. libsqlite3.so.0 is needed by (installed) rpm-4.4.2.3-9.el5.i386  
  6. libsqlite3.so.0 is needed by (installed) rpm-libs-4.4.2.3-9.el5.i386  
  7. libsqlite3.so.0 is needed by (installed) apr-util-1.2.7-7.el5.i386  
  8. libsqlite3.so.0 is needed by (installed) python-sqlite-1.1.7-1.2.1.i386  
  9. libsqlite3.so.0 is needed by (installed) yum-metadata-parser-1.1.2-2.el5.i386  
  10. libsqlite3.so.0 is needed by (installed) rpm-build-4.4.2.3-9.el5.i386  
  11. libsqlite3.so.0 is needed by (installed) rpm-devel-4.4.2.3-9.el5.i386  
  12. libsqlite3.so.0 is needed by (installed) systemtap-0.7.2-2.el5.i386  
  13. sqlite = 3.3.6-2 is needed by (installed) sqlite-devel-3.3.6-2.i386  
  14. qlite is needed by (installed) systemtap-0.7.2-2.el5.i386  

觉不可强行卸载sqlite,前人已有经验,会死的很难看。

升级呢? 有sqlite-devel-3.3.6-2.i386依赖

 
  1. [root@svnserv ~]# rpm -Uvh sqlite-3.5.9-2.i386.rpm  
  2. error: Failed dependencies:  
  3. sqlite = 3.3.6-2 is needed by (installed) sqlite-devel-3.3.6-2.i386  

那升级sqlite-devel-3.3.6-2.i386到sqlite-devel-3.5.9-2.i386呢?又说需要先CentOS安装了sqlite = 3.5.9-2 才行。

 
  1. [root@svnserv ~]# rpm -Uvh sqlite-devel-3.5.9-2.i386.rpm  
  2. error: Failed dependencies:  
  3. sqlite = 3.5.9-2 is needed by sqlite-devel-3.5.9-2.i386  

这就形成一个循环依赖了。想升级sqlite 3.3到3.5, 告诉我sqllite devel 3.3需要它。升级sqllite devel 3.3呢,告诉我必须先安装sqlite

删除sqlite-devel-3.3.6-2呢?不行

 
  1. [root@svnserv ~]# rpm -e sqlite-devel-3.3.6-2  
  2. error: Failed dependencies:  
  3. sqlite-devel is needed by (installed) rpm-devel-4.4.2.3-9.el5.i386  

改CentOS安装subversion 1.5

一时无法,所以还是安装subversion 1.5吧。

由于1.65对sqlite版本的依赖,转到较老的1.57版,不需要sqlite支持。

到 http://www.open.collab.net/downloads/subversion.html 下载认证的rpm release,需要在collab注册。

直接安装服务器端,提示依赖错误

 
  1. [root@svnserv ~]# rpm -ivh CollabNetSubversion-server-1.5.7-1.i386.rpm  
  2. warning: CollabNetSubversion-server-1.5.7-1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 35bcca43  
  3. error: Failed dependencies:  
  4. CollabNetSubversion-client >= 1.5.7-1 is needed by CollabNetSubversion-server-1.5.7-1.i386  
  5. 先安装1.5 client  
  6. [root@svnserv ~]# rpm -ivh CollabNetSubversion-client-1.5.7-1.i386.rpm  
  7. warning: CollabNetSubversion-client-1.5.7-1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 35bcca43  
  8. Preparing...                ########################################### [100%]  
  9. 1:CollabNetSubversion-cli########################################### [100%]  
  10. 再安装 1.5 server ok  
  11. [root@svnserv ~]# rpm -ivh CollabNetSubversion-server-1.5.7-1.i386.rpm  
  12. warning: CollabNetSubversion-server-1.5.7-1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 35bcca43  
  13. Preparing...                ########################################### [100%]  
  14. 1:CollabNetSubversion-ser########################################### [100%]  

成功了。

不过,执行 [root@svnserv ~]# svnserve --version
svnserve,版本 1.4.2 (r22196)
编译于 Jan 21 2009,20:11:00
还是1.4.2 [root@svnserv ~]# whereis svnserve
svnserve: /usr/bin/svnserve /opt/CollabNet_Subversion/bin/svnserve /usr/share/man/man8/svnserve.8.gz

发现新版被安装与/opt目录去了。
执行[root@svnserv ~]# /opt/CollabNet_Subversion/bin/svnserve --version
svnserve,版本 1.5.7 (r36142)
编译于 Aug  7 2009,15:28:37
可以将/opt相应bin目录的svn*拷到/usr/bin,也可以直接执行该目录。

我的版本库放在/root/svn目录下,直接从原机器打包拷过来的。
/opt/CollabNet_Subversion/bin/svnserve -d -r /root/svn
需要配置一下svnserve.conf和相应的权限
执行svn list svn://localhost/ 
就会显示相应的库,一切ok。这样就是在CentOS安装新版subversion。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值