linux环境下安装svn服务器

1 安装SVN前检查:  
         检查是否安装SVN: rpm -qa subversion 
         查看安装SVN版本信息: svnserve --version  
       如果存在旧版本,卸载旧版本SVN:yum remove subversion 

2 安装SVN:      
      yum install -y subversion 

3 代码库创建:   
    mkdir -p /opt/svn/repos     (/opt/svn/repos 可自行定义目录)
svnadmin create /opt/svn/repos   

执行上面的命令后,自动建立repos库,查看/opt/svn/repos 文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立。


4 配置代码库: 
       进入上面生成的文件夹conf下,进行配置:cd /opt/svn/repos/conf 
   1)设置SVN用户及口令:修改文件passwd,
 如以下内容:  目的是设置哪些用户可以访问SVN资源库 
 [root@admin conf]# vi passwd   
 # harry = harryssecret 
 # sally = sallyssecret 
 # 用户名 = 密码 
 chenqian = chenqian 
 wangwu = wangwu 
 hello = 123  
 # 这样我们就建立了3个用户,其中有个用户为hello, 密码123,以上语句都必须顶格写, 左侧不能留空格, 否则会出错.  
 2)设置SVN用户访问权限控制:修改文件authz,如以下内容:目的是设置哪些用户可以访问哪些目录,向authz文件追加以下内容: 
     [root@admin conf]# vi authz 
 [groups]  
 # harry_and_sally = harry,sally  
 # harry_sally_and_joe = harry,sally,&joe 
 admin = chenqian,wangwu   
 #设置[/]代表根目录下所有的资源  
    [/] 或者写成[repl:/]  
@admin = rw 
hello = r  
# 意思是admin组中的2个用户对repos库下所有的目录有读写权限,hello只有可读权限,
               当然也可以限定。以上语句都必须顶格写, 左侧不能留空格, 否则会出错. 
 3)设置服务配置文件:修改文件svnserve.conf,如以下内容:
     [root@admin conf]# vi svnserve.conf 
 [general]  
 #匿名访问的权限,可以是read,write,none,默认为read anon-access=none 
 #使授权用户有写权限  auth-access=write 
 #密码数据库的路径  password-db=passwd 
 #访问控制文件  authz-db=authz  
 #认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字  realm=/opt/svn/repos  

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


5 启动SVN服务: 
svnserve -d -r /opt/svn/repos  或者  /etc/init.d/svnserve restart  
1)带 -d 选项即可以作为一个单独的守护进程运行,
     -r 选项可以指定发布哪个目录下的版本库; 
    2)一旦服务器运行,就在默认端口3690进行监听,使用 telnet 可以测试到 3690 端口已经开放了,如下: 
        # telnet 127.0.0.1 3690 
 Trying 127.0.0.1...  
 Connected to Hinex.VM (127.0.0.1). 
 Escape character is '^]'.  
 ( success ( 2 2 ( ) ( edit-pipeline svndiff1 absent-entries commit-revprops 
 depth log-revprops partial-replay ) ) ) 
3)若需更改SVN服务默认端口:       
查看端口使用情况:netstat -antp 
        启动svn和指定端口的方法是:svnserve -d --list-port 3700 -r /opt/svn/repos 

6 查看SVN服务是否正常:  ps -ef|grep svn   或者  ps aux|grep svn 

7 SVN客户端TortoiseSVN连接访问服务端地址:  svn://ip/repos     
 记得让防火墙放过3690端口哦,不然无法访问,svn的默认端口是3690.    
 此外,如果需要将一个 svn 服务器中的版本库移植到另外一台svn服务器上,
 可以直接将原版本库中 db 文件夹中的内容全部复制到新 svn 服务器相应版本库目录下即可,
 还要注意两个 svn 服务器所运行的 svn 版本,不同版本可能会出现不兼容情况
 
 
  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值