centos编译安装svn

  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

    [/]

    @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

    注:

    如果你的svn库的路径为:/home/svn/svntest

    那么你启动时,不能用命令:

    svnserve -d -r /home/svn/svntest

    而要用命令:

    svnserve -d -r /home/svn/

    如果已经启动svnserve -d -r /opt/svn/svntest/ ,可以先kill掉,再重新输入
    svnserve -d -r /home/svn/
     

启服务器及测试

  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

    CentOS:[2]SVN 搭建(源码编译安装)
  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服务端就配置完成了

原文地址:https://www.cnblogs.com/you-jia/p/4540530.html