阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS7.2 编译安装SVN1.9.5客户端

232次阅读
没有评论

共计 6013 个字符,预计需要花费 16 分钟才能阅读完成。

背景

原来想在 Linux 机上开 Samba 共享,在 Windows 机上把工作目录映射到网络驱动器,用 Source Insight 编辑代码后就不用来回同步文件了。

然而在使用中发现,Windows 机用的 SVN 客户端版本是 1.9.4,而 CentOS 自带的版本是 1.7.14。

用 Windows 更新过 SVN Work Directory 后,一不小心就更到了 SVN1.8 版格式(应该可以选不更新格式吧?)

这样弄完,Linux 机上就无法使用 SVN 了(使用 1.7 版格式,提示客户端版本太旧)。

网上搜 RPM 包但是 CentOS 木有更新的版本了,无奈只好琢磨编译安装最新版!这样两个平台都用 1.9 版的,就应该没问题了!

环境

[root@linuxidc ~]# cat /etc/RedHat-release 
CentOS Linux release 7.2.1511 (Core)

且是 Minimal Install

安装

主要参考官网的安装说明,这里没有研究最小依赖安装环境,不过也挺小的了。

安装开发环境工具

[root@linuxidc ~]# yum -y groupinstall "Deveolpment tools"

这里也会把 svn 客户端安上,但是是 1.7.14 版本的,移除它

[root@linuxidc ~]# yum -y remove subversion

根据安装说明,这里需要几个依赖

安装依赖

[root@linuxidc ~]# yum -y install yum install Python-devel zlib openssl openssl-devel file-libs libtool libtool-devel

查看版本

[root@linuxidc ~]# rpm -qa | grep autoconf
autoconf-2.69-11.el7.noarch
[root@linuxidc ~]# rpm -qa | grep libtool
libtool-2.4.2-21.el7_2.x86_64
[root@linuxidc ~]# gcc --version
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-11)
Copyright (C) 2015 Free Software Foundation, Inc.

下载 svn 源码包

[root@linuxidc ~]# wget http://mirrors.tuna.tsinghua.edu.cn/apache/subversion/subversion-1.9.5.tar.gz
[root@linuxidc ~]# tar zxvf subversion-1.9.5.tar.gz
[root@linuxidc ~]# cd subversion-1.9.5
[root@linuxidc subversion-1.9.5]# ll
-rw-rw-r--.  1 1000 1000   2032 Mar 11  2013 aclocal.m4
-rwxrwxr-x.  1 1000 1000   7726 Jul 27  2015 autogen.sh
-rw-rw-r--.  1 1000 1000     94 Feb 23  2010 BUGS
drwxrwxr-x.  6 1000 1000   4096 Nov 21 21:57 build
-rw-rw-r--.  1 1000 1000  48346 Jun 24  2015 build.conf
-rw-rw-r--.  1 1000 1000 850308 Nov 21 21:57 build-outputs.mk
-rw-rw-r--.  1 1000 1000 325464 Nov 21 21:07 CHANGES
-rw-rw-r--.  1 1000 1000  14126 Jan 26  2015 COMMITTERS
-rwxrwxr-x.  1 1000 1000 877735 Nov 21 21:57 configure
-rw-rw-r--.  1 1000 1000  55079 Nov 17 12:00 configure.ac
drwxrwxr-x.  4 1000 1000     66 Nov 21 21:57 doc
-rw-rw-r--.  1 1000 1000     23 Nov 21 21:57 gen-make.opts
-rwxrwxr-x.  1 1000 1000  10988 May 14  2015 gen-make.py
-rwxrwxr-x.  1 1000 1000   4859 Aug  4 12:00 get-deps.sh
-rw-rw-r--.  1 1000 1000  58579 Dec 12  2015 INSTALL
-rw-rw-r--.  1 1000 1000  19889 Jan 30  2015 LICENSE
-rw-rw-r--.  1 1000 1000  40217 Dec 10  2015 Makefile.in
-rw-rw-r--.  1 1000 1000   1132 Apr 21  2016 NOTICE
-rw-rw-r--.  1 1000 1000   2303 Jun  1  2016 README
drwxrwxr-x. 36 1000 1000   4096 Nov 21 21:57 subversion
drwxrwxr-x. 14 1000 1000   4096 Nov 21 21:57 tools
-rw-rw-r--.  1 1000 1000  41944 Dec  7  2015 win-tests.py

使用自带脚本下载 svn 依赖(前面加了 === 的为 get-deps.sh 脚本下载的依赖)

[root@linuxidc subversion-1.9.5]# ./get-deps.sh
[root@linuxidc
subversion-1.9.5]# ll
-rw-rw-r–.  1 1000  1000  2032 Mar 11  2013 aclocal.m4
===drwxr-sr-x. 25 5000 10001  4096 Feb  8  2012 apr
===drwxr-xr-x. 19  500  1000  4096 Sep  8  2012 apr-util
-rwxrwxr-x.  1 1000  1000  7726 Jul 27  2015 autogen.sh
-rw-rw-r–.  1 1000  1000    94 Feb 23  2010 BUGS
drwxrwxr
-x.  6 1000  1000  4096 Nov 21 21:57 build
-rw-rw-r–.  1 1000  1000  48346 Jun 24  2015 build.conf
-rw-rw-r–.  1 1000  1000 850308 Nov 21 21:57 build-outputs.mk
-rw-rw-r–.  1 1000  1000 325464 Nov 21 21:07 CHANGES
-rw-rw-r–.  1 1000  1000  14126 Jan 26  2015 COMMITTERS
-rwxrwxr-x.  1 1000  1000 877735 Nov 21 21:57 configure
-rw-rw-r–.  1 1000  1000  55079 Nov 17 12:00 configure.ac
drwxrwxr
-x.  4 1000  1000    66 Nov 21 21:57 doc
-rw-rw-r–.  1 1000  1000    23 Nov 21 21:57 gen-make.opts
-rwxrwxr-x.  1 1000  1000  10988 May 14  2015 gen-make.py
-rwxrwxr-x.  1 1000  1000  4859 Aug  4 12:00 get-deps.sh
-rw-rw-r–.  1 1000  1000  58579 Dec 12  2015 INSTALL
-rw-rw-r–.  1 1000  1000  19889 Jan 30  2015 LICENSE
-rw-rw-r–.  1 1000  1000  40217 Dec 10  2015 Makefile.in
-rw-rw-r–.  1 1000  1000  1132 Apr 21  2016 NOTICE
-rw-rw-r–.  1 1000  1000  2303 Jun  1  2016 README
===drwxr-xr-x.  6  501 games  4096 Oct 21  2014 serf
===drwxr-xr-x.  2 root root      71 Dec 20  2012 sqlite-amalgamation
drwxrwxr
-x. 36 1000  1000  4096 Nov 21 21:57 subversion
drwxrwxr
-x. 14 1000  1000  4096 Nov 21 21:57 tools
-rw-rw-r–.  1 1000  1000  41944 Dec  7  2015 win-tests.py
===drwxr-xr-x. 14  501 games  4096 Apr 29  2013 zlib

下载 serf 构建工具

[root@linuxidc subversion-1.9.5]# cd serf
[root@linuxidc serf]# wget http://prdownloads.sourceforge.net/scons/scons-local-2.3.0.tar.gz
[root@linuxidc serf]# tar zxvf scons-local-2.3.0.tar.gz

 按照如下顺序安装

安装 apr

[root@linuxidc ~]# cd ~/subversion-1.9.5/apr
[root@linuxidc apr]# ./buildconf
[root@linuxidc apr]# ./configure
[root@linuxidc apr]# make 
[root@linuxidc apr]# make install

安装 apr-util

[root@linuxidc ~]# cd ~/subversion-1.9.5/apr-util
[root@linuxidc apr-util]# ./buildconf
[root@linuxidc apr-util]# ./configure --with-apr=/usr/local/apr/bin/apr-1-config
[root@linuxidc apr-util]# make 
[root@linuxidc apr-util]# make install

安装 serf

[root@linuxidc ~]# cd ~/subversion-1.9.5/serf
[root@linuxidc serf]# ln -s /root/subversion-1.9.5/serf/scons.py /usr/local/bin/scons
[root@linuxidc serf]# scons APR=/usr/local/apr/bin/apr-1-config APU=/usr/local/apr/bin/apu-1-config OPENSSL=/usr PREFIX=/usr/local
[root@linuxidc serf]# scons install

安装 svn-client

[root@linuxidc ~]# cd ~/subversion-1.9.5/
[root@linuxidc ~]# ./configure --with-serf=/usr/local --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config
[root@linuxidc ~]# make
[root@linuxidc ~]# make install

使用

[root@linuxidc serf]# svn --version
svn, version 1.9.5 (r1770682)
   compiled Jan  4 2017, 07:40:17 on x86_64-unknown-linux-gnu

Copyright (C) 2016 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/

The following repository access (RA) modules are available:

* ra_svn : Module for accessing a repository using the svn network protocol.
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
  - using serf 1.3.8 (compiled with 1.3.8)
  - handles 'http' scheme
  - handles 'https' scheme

The following authentication credential caches are available:

* Plaintext cache in /root/.subversion
* GPG-Agent

Ubuntu 14.04 下搭建 SVN 服务器 SVN://  http://www.linuxidc.com/Linux/2015-01/111956.htm

CentOS 7 下安装 iF.svnadmin 实现 Web 方式管理 SVN(源码安装)http://www.linuxidc.com/Linux/2016-08/134214.htm

CentOS 6.5 部署 Apache+SVN  http://www.linuxidc.com/Linux/2013-12/94315.htm

SVN 服务器搭建步骤及使用实战 http://www.linuxidc.com/Linux/2017-01/139282.htm

Windows 下 SVN 服务器搭建和使用 + 客户端重新设置密码 http://www.linuxidc.com/Linux/2013-05/85189p5.htm

CentOS 6.6 搭建 SVN 服务器 http://www.linuxidc.com/Linux/2016-12/137864.htm

CentOS 7.2 下 Nginx+MySQL+PHP-FPM+SVN 配置 Walle 自动化部署系统详解 http://www.linuxidc.com/Linux/2016-11/137703.htm

CentOS 7.1 下 SVN 安装与配置 http://www.linuxidc.com/Linux/2016-12/138637.htm

Subversion (SVN) 的详细介绍 :请点这里
Subversion (SVN) 的下载地址 :请点这里

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2017-03/141387.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计6013字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中