Subversion is often used by us. However, due to hardware problems with the original subversion server, we need to migrate it to the new server. We use CentOS for installation. We all say that CentOS is slow to update. Sure enough, the built-in subversion is 1.4.2. The original backup version library is version 1.5.
1. Try to recover from an existing 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: Expected File System (FS) format "2"; find format "3"
This is because the version of the subversion to be restored is inconsistent with the version currently installed in CentOS, and the version to be restored is relatively new.
[Root @ svnserv ~] # Svnserve -- version
Svnserve, version 1.4.2 (r22196)
2. Try to install subversion 1.6.5 on CentOS
You must upgrade the subversion.
Check that the latest stable version is subversion-1.6.5.
If the source code is downloaded and compiled, many dependent libraries need to be downloaded. Therefore, install the rpm corresponding to redhat AS 5 directly.
- [root@svnserv ~]# rpm -ivh subversion-1.6.5-1.i386.rpm
- error: Failed dependencies:
- libneon.so.27 is needed by subversion-1.6.5-1.i386
- neon >= 0.26.1 is needed by subversion-1.6.5-1.i386
- sqlite >= 3.4 is needed by subversion-1.6.5-1.i386
-
- [root@svnserv ~]# rpm -ivh neon-0.28.4-1.i386.rpm
- Preparing... ########################################### [100%]
- 1:neon ########################################### [100%]
-
Install sqlite in CentOS first
- [root@svnserv ~]# rpm -ivh subversion-1.6.5-1.i386.rpm
- error: Failed dependencies:
- sqlite >= 3.4 is needed by subversion-1.6.5-1.i386
How about installing sqlite on CentOS? Conflicts with existing versions
- [root@svnserv ~]# rpm -ivh sqlite-3.5.9-2.i386.rpm
- Preparing... ########################################### [100%]
- file /usr/bin/sqlite3 from install of sqlite-3.5.9-2.i386 conflicts with file from package sqlite-3.3.6-2.i386
- 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
-
- [root@svnserv ~]# rpm -qa | grep sqlite
- python-sqlite-1.1.7-1.2.1
- sqlite-devel-3.3.6-2
- sqlite-3.3.6-2
-
Uninstall? Dependency
- [root@svnserv ~]# rpm -e sqlite-3.3.6-2
- error: Failed dependencies:
- libsqlite3.so.0 is needed by (installed) php-pdo-5.1.6-23.el5.i386
- libsqlite3.so.0 is needed by (installed) sqlite-devel-3.3.6-2.i386
- libsqlite3.so.0 is needed by (installed) rpm-4.4.2.3-9.el5.i386
- libsqlite3.so.0 is needed by (installed) rpm-libs-4.4.2.3-9.el5.i386
- libsqlite3.so.0 is needed by (installed) apr-util-1.2.7-7.el5.i386
- libsqlite3.so.0 is needed by (installed) python-sqlite-1.1.7-1.2.1.i386
- libsqlite3.so.0 is needed by (installed) yum-metadata-parser-1.1.2-2.el5.i386
- libsqlite3.so.0 is needed by (installed) rpm-build-4.4.2.3-9.el5.i386
- libsqlite3.so.0 is needed by (installed) rpm-devel-4.4.2.3-9.el5.i386
- libsqlite3.so.0 is needed by (installed) systemtap-0.7.2-2.el5.i386
- sqlite = 3.3.6-2 is needed by (installed) sqlite-devel-3.3.6-2.i386
- qlite is needed by (installed) systemtap-0.7.2-2.el5.i386
We don't think we can force uninstall sqlite. We already have experience and it's hard to see it.
What about upgrade? Sqlite-devel-3.3.6-2.i386 dependency
- [root@svnserv ~]# rpm -Uvh sqlite-3.5.9-2.i386.rpm
- error: Failed dependencies:
- sqlite = 3.3.6-2 is needed by (installed) sqlite-devel-3.3.6-2.i386
What about upgrading sqlite-devel-3.3.6-2.i386 to sqlite-devel-3.5.9-2.i386? We also need to install sqlite = 3.5.9-2 In CentOS first.
- [root@svnserv ~]# rpm -Uvh sqlite-devel-3.5.9-2.i386.rpm
- error: Failed dependencies:
- sqlite = 3.5.9-2 is needed by sqlite-devel-3.5.9-2.i386
This forms a circular dependency. To upgrade sqlite 3.3 to 3.5, tell me sqllite devel 3.3 needs it. Upgrade sqllite devel 3.3 and tell me to install sqlite first
What about removing the sqlite-devel-3.3.6-2? No
- [root@svnserv ~]# rpm -e sqlite-devel-3.3.6-2
- error: Failed dependencies:
- sqlite-devel is needed by (installed) rpm-devel-4.4.2.3-9.el5.i386
Change CentOS to subversion 1.5
At the moment, it is impossible to install subversion 1.5.
Because 1.65 is dependent on the sqlite version and switched to the older version 1.57, sqlite support is not required.
To download the certified rpm release to the http://www.open.collab.net/downloads/subversion.html, You need to register in collab.
Directly install the server and prompt a dependency error.
- [Root @ svnserv ~] # Rpm-ivh CollabNetSubversion-server-1.5.7-1.i386.rpm
- Warning: CollabNetSubversion-server-1.5.7-1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 35bcca43
- Error: Failed dependencies:
- CollabNetSubversion-client>= 1.5.7-1 is needed by CollabNetSubversion-server-1.5.7-1.i386
- First install the 1.5 client
- [Root @ svnserv ~] # Rpm-ivh CollabNetSubversion-client-1.5.7-1.i386.rpm
- Warning: CollabNetSubversion-client-1.5.7-1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 35bcca43
- Preparing... ######################################## ### [100%]
- 1: collabNetSubversion-cli ##################################### ###### [100%]
- Then install 1.5 server OK
- [Root @ svnserv ~] # Rpm-ivh CollabNetSubversion-server-1.5.7-1.i386.rpm
- Warning: CollabNetSubversion-server-1.5.7-1.i386.rpm: Header V3 DSA signature: NOKEY, key ID 35bcca43
- Preparing... ######################################## ### [100%]
- 1: collabNetSubversion-ser ##################################### ###### [100%]
Succeeded.
However, run [root @ svnserv ~] # Svnserve -- version
Svnserve, version 1.4.2 (r22196)
Compiled on Jan 21 2009,20: 11: 00
Or 1.4.2 [root @ svnserv ~] # Whereis svnserve
Svnserve:/usr/bin/svnserve/opt/CollabNet_Subversion/bin/svnserve/usr/share/man/man8/svnserve.8.gz
The new version is installed in the/opt directory.
Run [root @ svnserv ~] #/Opt/CollabNet_Subversion/bin/svnserve -- version
Svnserve, version 1.5.7 (r36142)
Compiled on Aug 7 2009,15: 28: 37
You can copy the svn * of the/opt bin directory to/usr/bin, or directly execute this directory.
My version library is stored in the/root/svn directory and copied from the original machine.
/Opt/CollabNet_Subversion/bin/svnserve-d-r/root/svn
You need to configure svnserve. conf and the corresponding permissions.
Run svn list svn: // localhost/
The corresponding database is displayed, and everything is OK. In this way, the new version of subversion is installed in CentOS.
- How to get started with CentOS
- Set tomcat environment variables in CentOS
- Comprehensively organize the use of Chinese characters in the CentOS System
- Quick installation of LNMP in CentOS
- How do you choose the RHEL CentOS system?