centOS6.4部署svn-阿里云开发者社区

开发者社区> 科技小能手> 正文

centOS6.4部署svn

简介:
+关注继续查看

本文详细的介绍了在centos 6 64位服务器上搭建svn服务器的详细过程。


工具/原料

  • 环境linode vps centos6 64bit

  • svn是版本管理控制工具 安装简单方便;

  • svn独立服务器安装方式

svn独立服务器的搭建

  1. 1

    环境准备

    yum groupinstall "X Software Development" "Development Libraries" "Development Tools"

  2. 2

    下载所需的源码包

    subversion-deps-1.6.17.tar.gz svn 的支持库之类的文件
    wget http://subversion.tigris.org/downloads/subversion-deps-1.6.17.tar.gz
    subversion-1.6.17.tar.gz svn 的主程序
    wget http://subversion.tigris.org/downloads/subversion-1.6.17.tar.gz

  3. 3

    源码编译安装

    这两个要解压在同一个目录下
    tar zxvf subversion-deps-1.6.17.tar.gz
    tar xvf subversion-1.6.17.tar.gz
    cd subversion-1.6.17
    ./configure --prefix=/opt/svn
    make && make install

  4. 4

    修改环境变量

  5. 5

    vi /etc/profile , 在/etc/profile 最后加入:
    PATH=$PATH:/opt/svn/bin
    export PATH
    检测是否安装成功
    svnserve --version
    显示如下信息则表示安装成功。
    svnserve, version 1.6.17 (r1128011)
    compiled Mar 23 2012, 16:57:41

    END

配置svn

  1. 1

    系统采用为每个项目单独建一版本库的策略。配置文件,密码文件,访问控制文件等都放在
    版本库的conf 目录下。所以每次开始一个新项目都必须新建一个版本库,并重新配置各配
    置文件。还有很重要的一条,要求各组员重新配置客户端,包括服务器版本库路径,本地路
    径等信息。

  2. 2

    创建svn库testsvn

    mkdir /var/svn
    cd /var/svn
    svnadmin create testsv
    cd testsv
    [root@nagios testsv]# ls
    conf db format hooks locks README.txt
    [root@nagios testsv]# cd conf/
    [root@nagios conf]# ls
    authz passwd svnserve.conf

  3. 3

    配置版本库信息

    [root@nagios conf]# vi svnserve.conf
    [general]
    anon-access = none
    auth-access = write
    password-db = passwd
    authzauthz-db = authz
    realm = testsv(库的名字)
    [sasl]
    # use-sasl = true
    # min-encryption = 0
    # max-encryption = 256

  4. 4

    定义版本库访问权限

    [root@nagios conf]# vi authz
    [aliases]
    # joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe
    Average
    [groups]
    # harryharry_and_sally = harry,sally
    # harryharry_sally_and_joe = harry,sally,&joe
    # [/foo/bar]
    # harry = rw
    # &joe = r
    # * =
    # [repository:/baz/fuz]
    # @harry_and_sally = rw
    # * = r
    #添加下面两句
    [/]
    testuser = rw
    [testsv]
    testuser = rw

  5. 5

    定义用户密码

    [root@nagios conf]# cat passwd
    [users]
    # harry = harryssecret
    # sally = sallyssecret
    testuser = testsv123456

    END

启动svn服务

  1. 1

    建立启动svn 的用户

    useradd svn
    passwd svn
    根据提示为用户svn 设置密码
    允许用户svn 访问版本库
    chown -R svn:svn /var/svn
    启动svn
    (1)用设定帐户启动
    su svn -c "svnserve -d --listen-port 9999 -r /var/svn"
    其中:
    su svn 表示以用户svn 的身份启动svn
    -d 表示以daemon 方式(后台运行)运行
    –listen-port 9999表示使用9999 端口,可以换成你需要的端口。但注意,使用1024以下的端
    口需要root 权限
    -r /var/svn 指定根目录是/var/svn
    (2)对于单个代码仓库:

  2. 2

    启动命令:

    svnserve -d -r 文件夹路径--listen-host 192.168.100.131
    其中-d 表示在后台运行, -r 指定服务器的根目录,这样访问服务器时就可以直接用svn://
    服务器ip 来访问了。
    如果服务器有多ip 的话–listen-host 来指定监听的ip 地址.
    我们可以在svn 客户端中通过svn://192.168.100.131 来访问svn 服务器
    (3)对于多个代码仓库:
    我们在启动时也可以用-r 选项来指定服务器根目录, 但访问时需要写上每个仓库相对于svn
    根目录的相对路径.
    比如, 我们有两个代码仓库/var/svn/testsv
    svnserve -d -r /var/svn --listen-host 192.168.1.100
    来启动,
    那么在客户端访问时可以用svn://192.168.100.100/testsv 来分别访问两个项目启动完成以

    我启动的方法:
    [root@austit fabian]# svnserve -d -r /var/svn --listen-host 192.168.100.131
    注意:
    svn 默认端口是3690 ,你需要在防火墙上开放这个端口。也可以通过svnserve 的–listen-port
    选项来指定一个已经开放的其他端口, 不过这样的话客户端使用也必须家上端口, 如
    svn://192.168.100.200:8888/

  3. 3

    检查是否启动成功

    (查看是否存在svnserve 进程)
    ps -ef|grep svnserve
    如果显示如下,即为启动成功:
    svn 6941 1 0 15:07 ? 00:00:00 svnserve -d –listen-port 9999 -r /var/svn
    我是用root 帐户启动的:
    [root@austit fabian]# svnserve -d -r /var/svn --listen-host 192.168.100.131
    [root@austit fabian]# ps -ef|grep svnserve
    root 4513 1 0 21:07 ? 00:00:00 svnserve -d -r /var/svn --listen-host 192.168.100.131
    root 4515 4409 0 21:07 pts/1 00:00:00 grep svnserve

    END

svn使用


然后用户下载客户端访问即可,推荐使用TortoiseSVN。

注意事项

  • 尽量不要使用centos自带的svn版本服务器

  • 安装过程不要断掉ssh链接,否则容易出现未知错误


本文转自 wdy198622 51CTO博客,原文链接:http://blog.51cto.com/weimouren/1769402

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
9943 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,大概有三种登录方式:
2957 0
使用OpenApi弹性释放和设置云服务器ECS释放
云服务器ECS的一个重要特性就是按需创建资源。您可以在业务高峰期按需弹性的自定义规则进行资源创建,在完成业务计算的时候释放资源。本篇将提供几个Tips帮助您更加容易和自动化的完成云服务器的释放和弹性设置。
12060 0
阿里云服务器安全组设置内网互通的方法
虽然0.0.0.0/0使用非常方便,但是发现很多同学使用它来做内网互通,这是有安全风险的,实例有可能会在经典网络被内网IP访问到。下面介绍一下四种安全的内网互联设置方法。 购买前请先:领取阿里云幸运券,有很多优惠,可到下文中领取。
11808 0
腾讯云服务器 设置ngxin + fastdfs +tomcat 开机自启动
在tomcat中新建一个可以启动的 .sh 脚本文件 /usr/local/tomcat7/bin/ export JAVA_HOME=/usr/local/java/jdk7 export PATH=$JAVA_HOME/bin/:$PATH export CLASSPATH=.
4640 0
如何设置阿里云服务器安全组?阿里云安全组规则详细解说
阿里云安全组设置详细图文教程(收藏起来) 阿里云服务器安全组设置规则分享,阿里云服务器安全组如何放行端口设置教程。阿里云会要求客户设置安全组,如果不设置,阿里云会指定默认的安全组。那么,这个安全组是什么呢?顾名思义,就是为了服务器安全设置的。安全组其实就是一个虚拟的防火墙,可以让用户从端口、IP的维度来筛选对应服务器的访问者,从而形成一个云上的安全域。
7449 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
7310 0
阿里云服务器ECS登录用户名是什么?系统不同默认账号也不同
阿里云服务器Windows系统默认用户名administrator,Linux镜像服务器用户名root
4436 0
23706
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载