centos源码安装subversion

本文介绍如何在CentOS 6.2环境中安装和配置SVN版本控制系统,包括解决常见编译错误、配置服务器及客户端的方法,以及通过TortoiseSVN在Windows上进行操作。

安装说明

系统环境:CentOS-6.2

下载相关软件

工具/原料

  • CentOS

  • SVN

  • http://subversion.tigris.org/downloads/subversion-1.6.1.tar.gz

  • http://subversion.tigris.org/downloads/subversion-deps-1.6.1.tar.gz

安装及配置

  1. 1

    解压,要在同一个目录下:

    [root@youxia201 opt]# tar-zxvf subversion-1.6.1.tar.gz

    [root@youxia201 opt]# tar-zxvf subversion-deps-1.6.1.tar.gz

  2. 2

    编译及安装:

    [root@localhost ~]# cdsubversion-1.6.1

    [root@localhostsubversion-1.6.1]# ./configure  先编译,不指定路径,看是否报错

    报错一:

    configure: error: in`/root/subversion-1.6.1':

    configure: error: no acceptable C compilerfound in $PATH   此错误的意思是没有安装gcc语言

    解决方法:yum install gcc  ,安装后再次执行./configure看是否报错

    报错二:

    configure: error: We requireOpenSSL; try --with-openssl  没有安openssl openssl-devel

    解决方法:yum install opensslopenssl-devel, 安装后再次执行./configure看是否报错

    报错三:

    configure: error: no XML parser was found: expat or libxml 2.x required  

    解决方法:yum install expat, 如果装不上就源码装安装后再次执行./configure看是否报错, 

    如果还有错误就根据提示一直解决,不会的百度,直到出现下列正确提示:

    Berkeley DB here:

    http://www.oracle.com/technology/software/products/berkeley-db/index.html

    成功后执行下列操作

    [root@youxia201subversion-1.6.1]# ./configure --prefix=/usr/local/svn/

    [root@youxia201subversion-1.6.1]# make && make install

  3. 3

    把svn相关的命令添加到环境变量中:

    [root@youxia201subversion-1.6.1]# echo "export PATH=$PATH:/usr/local/svn/bin/">> /etc/profile

    [root@youxia201subversion-1.6.1]# source /etc/profile

    [root@localhost subversion-1.6.1]# cd /usr/local/svn/ 

    [root@localhost svn]# ls  看到下面有内容,说明安装成功

    bin  build-1 include  lib  share 

    [root@localhost ~]# /usr/local/svn/bin/svnserve  --version 查看SVN版本信息,出现版本信息为正确

    END

建立测试仓库

  1. 1

    建立SVN的根目录,研发中心有多个项目部:

    [root@youxia201subversion-1.6.1]# mkdir -p /opt/svn/

  2. 2

    建立一个测试仓库:

    [root@youxia201subversion-1.6.1]# mkdir -p /opt/svn/svntest/

    [root@youxia201subversion-1.6.1]# svnadmin create /opt/svn/svntest/

  3. 3

    修改配置文件:

    [root@localhost ~]# cd /opt/svn/svntest/

    [root@localhost svntest]# ls

    conf  db  format hooks  locks  README.txt

    [root@youxia201 svntest]# cd /opt/svn/svntest/conf/

    [root@youxia201 conf]# ll

    总计 24

    -rw-r--r-- 1 root root 710 08-25 09:40 authz

    -rw-r--r-- 1 root root 325 08-25 09:38 passwd

    -rw-r--r-- 1 root root 144908-25 09:36 svnserve.conf

  4. 4

    [root@youxia201 conf]# visvnserve.conf   修改svn配置文件

    [general]

    anon-access = none # 使非授权用户无法访问auth-access = write # 使授权用户有写权限password-db = password#密码数据库的路径authz-db = authz   # 访问控制文件以上语句都必须顶格写, 左侧不能留空格, 否则会出错.

  5. 5

    [root@admin conf]# vim passwd

    修改passwd为以下内容:

    [users]# harry = harryssecret# sally = sallyssecret

    hello=123

    aaa = 123

    www = 123

    用户名=密码

    这样我们就建立了hello用户, 123密码

    以上语句都必须顶格写, 左侧不能留空格, 否则会出错.

  6. 6

    [root@youxia201 conf]# viauthz   指定svn用户拥有的目录权限

    [groups]

    admin = hello,www

    [svntest:/]

    @admin = rw

    aaa = r

    将用户添加到组,利用组来设置权限,也可以不需要租,直接在版本库下设置用户,例如

    aaa = r ,意思是aaa用户对svntest测试库下所有的目录有读权限,而hello和www有读写权限。如果是自己用,就直接是读写吧。

    以上语句都必须顶格写, 左侧不能留空格, 否则会出错.

  7. 7

    [root@localhost conf]# svnserve -d -r /opt/svn/svntest/   启动SVN测试库

    如果已经有svn在运行,可以换一个端口运行svnserve -d -r /opt/svn/ --listen-port 3391

    END

启服务器及测试

  1. 1

    启SVN服务,并指定SVN的根目录:

    [root@youxia201 test]#svnserve -d -r /opt/svn/

    在这里特别的要注意,/opt/svn是仓库的根目录,不要和[svntest:/]目录重叠了。如果重叠是会提示错误

    [root@localhost conf]# svn co svn://127.0.0.1   在本机上测试svn是否生效

    不让它每次输入都提示yes/on的办法

    编辑vim /root/.subversion/servers  找到下行去掉#号将on改为yes,上面绿色部分已提示 store-plaintext-passwords = no

  2. 2

    服务已经正常起来:

    [root@localhost conf]# netstat -anpl |grep svn

    tcp     0     0 0.0.0.0:3690         0.0.0.0:*         LISTEN      318/svnserve        

    --------------------------------------------------------------------------------

    到此,SVN服务端就配置完成了

    END

svn客户端配置

  1. 1

    检查已安装版本

    #检查是否安装了低版本的SVN[root@localhost /]#rpm -qa subversion

    #如果存储旧版本,卸载旧版本SVN[root@localhost modules]#yum remove subversion

  2. 安装SVN

    [root@localhost modules]#yum install subversion 

  3. 验证安装

    检验已经安装的SVN版本信息[root@localhost modules]# svnserve --version

    svnserve,版本 1.6.11 (r934486)编译于 Jun 23 2012,00:44:03

    版权所有 (C) 2000-2009 CollabNet。Subversion 是开放源代码软件,请参阅 http://subversion.tigris.org/ 站点。此产品包含由 CollabNet(http://www.Collab.Net/) 开发的软件。

    下列版本库后端(FS) 模块可用:

    * fs_base : 模块只能操作BDB版本库。* fs_fs : 模块与文本文件(FSFS)版本库一起工作。

    Cyrus SASL 认证可用。

  4. SVN客户端下载文件

    [root@localhost ~]# mkdir /svn

    [root@localhost ~]# cd /svn/        #将svn服务上提取的文件放在此目录下

    [root@localhost svn]# svn checkoutsvn://192.168.233.203/repo              #svn服务器地址

    输入用户名密码:hello/123

    注:可以使用带用户名和密码的访问:

    svn co --username hello --password 123svn://192.168.233.203/repo

  5. SVN版本库更新

    svn up /svn/repo

  6. 上传文件到服务器

    [root@localhost ]# touch /svn/repo/test.php    #所有的动作必须在repo版本库中完成

    [root@localhost ]# svn add /svn/repo/test.php      #上传test.php文件到svn服务器

  7. 删除服务器上的文件

    [root@localhost ]# svn rm /svn/repo/test.php --force

  8. 查看版本库内容

    [root@localhost ~]# svn list /svn/repo/

  9. 创建版本库:终端输入:svnadmin create [路径]该路径可以是相对路径,例如,当前在home/user/svn/目录下,输入svnadmin create myproject,则该版本库会被创建在home/user/svn/目录下,新建一个文件夹名为myproject,其中便是版本库的文件了。

  10. 将文件导入版本库:终端输入:svn import [源路径] [目标版本库路径] -m [日志信息]源路径可以是相对路径,导入时会递归导入源路径下的所有文件和文件夹,目标版本库路径需要绝对目录(反正我试验是这样的),例如版本库的目录是:home/user/svn/myproject/。则应该这样写:file:///home/user/svn/myproject/例如将当前目录导入版本库myproject:svn import . file:///home/user/svn/myproject -m"导入文件"

  11. 从版本库导出:导入后原文件并未被纳入版本管理,若想获得受版本控制的文件,就需要从版本库导出终端输入:svn co [版本库路径] 例如将myproject库中的文件导出到当前目录

    END

在WindowsXP上安装svn客户端:TortoiseSVN

  1. 1

    下载完成后,直接next安装即可,安装完成后需要重启生效(自行选择32位于64位版本)。

  2. 2

    安装中文汉化包后会出现中文版选择项,进行下面设置成中文版

  3. 3

    测试:在桌面上新建一个名称为svntest的目录,在此目录上点击右键,选择Checkout,在首行填写svn服务器的IP地址及仓库名称

  4. 4

    输入svn服务器ip地址和要连接的版本库,输出目录可以根据自己的爱好更改路径

  5. 5

    输入连接服务器端的用户名称及密码后就可以使用了

  6. 6

    检查后的文件夹样子

  7. 7

    将windows上要添加的文件移动至repo文件夹进行上传,上传哪个文件就点击右键—添加

  8. 8

    添加完成后,再次右键—提交

  9. 9

    提交后可以查看一下这个文件都可以进行哪些操作

  10. 10

    Windows svn客户端到此就结束了,其余功能自己去摸索吧

    END

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值