linux下svn服务器的搭建

这一生的挚爱 提交于 2019-11-30 14:31:33

1.前言

    参考别人所述,svn服务器的两种运行方式:独立服务器svnserve和借助apache作为apache的一个模块,   这里选择搭建svnserve独立服务器。
    svn存储版本数据有两种方式:BDB和FSFS。BDB方式在服务器中断时,可能锁住数据。FSFS方式更安全些,兼容性好。

 2.svnserve的安装

    1.从官网上http://subversion.apache.org/选择最新版本并且解压到目录中

        tar -zxvf subversion-1.8.14.tar.gz

    

    2.进入subversion-1.8.14中按照tarball类型软件进行./configure &&make&& make install。由于./configure时需要很多的依赖文件,因此我们需要一步一步的安装并且添加上这些依赖文件。

    2.1执行./configure --prefix=/usr/local/svntest

        报出   configure: error: no suitable APR found

        这里需要安装apr文件,从网上下载了apr-1.5.2.tar.gz 。

        ./configure --prefix=/usr/local/apr&&make&& make install

        然后安装apr-util文件,从网上下载了apr-util-1.5.4.tar.gz

        ./configure  --prefix=/usr/local/apr-util  --with-apr=/usr/local/apr  && make && make install

        完成安装之后,重新对subversion进行./configure

        ./configure --prefix=/usr/local/svntest --with-apr=/usr/local/apr  --with-apr-util=/usr/local/apr-util

        继续报错 configure: error: Subversion requires SQLite
       
 下载了 sqlite-amalgamation-3071501.zip

        解压之后将其中       shell.c  sqlite3.c  sqlite3ext.h  sqlite3.h 文件复制到subversion/sqlite-amalgamation(文件不存在时,新建)

        继续报错: configure: error: subversion requires zlib

            下载zlib-1.2.8.tar.gz解压之后并且安装

            ./configure --prefix=/usr/local/zlib && make && make install

         重新编译subversion

        ./configure --prefix=/usr/local/subversion  --with-apr=/usr/local/apr  --with-apr-util=/usr/local/apr-util --with-zlib=/usr/local/zlib

        这次没有报错。查看svn server是否安装成功,如下图所示即为安装成功

        

配置环境变量如下图所示

 

3.svnserve服务的配置与启动

      

 

       参考文章 http://yp.oss.org.cn/software/show_resource.php?resource_id=720来进行一步总结:

   

 

        svnserve是一个轻量级的服务,使用自定义的协议通过TCP/IP与客户端通讯。客户端通过由svn://或者svn+ssh://开始的url访问svnserve服务器。

        其中常用命令为  svnserve -d -r /some/path

        -d :独立后台京城  -r:svnserve地址,端口3690

    

        下一步设置当前项目的主目录project

    

     会生成如图中所示的文件夹,其中常用的配置都存放在conf文件夹中,(注意这里的内容顶格写)

        在svnserve.conf 文件中,主要关注四行内容,

        

        然后在passwd文件中设置用户名和密码

        比如 admin = 123

        在authz中设置信息,设置项目中目录的权限,对于组的权限、对于用户的权限等等。

        

        项目经理创建了project文件夹的目录中建立了code,test,ui目录。然后将其导入到svn目录中,由于是本地虚拟机,这里使用的命令是svn import  ./project/  svn://localhost/project -m "first init"

        

通过本地的客户端tortoisesvn可以查看到

 

4.svnserve的常用命令

   参考http://1985wanggang.blog.163.com/blog/static/7763833201191731844395/这篇文章

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!