zoukankan      html  css  js  c++  java
  • Linux搭建 SVN 服务器

    安装 Subversion

    Subversion 是一个版本控制系统,相对于的 RCS 、 CVS ,采用了分支管理系统,它的设计目标就是取代 CVS 。

    yum install -y subversion

    创建项目版本库

     mkdir -p /data/svn/myproject

    svnadmin create /data/svn/myproject

    配置文件简介

    版本库中的配置目录 conf 有三个文件:

    • authz 是权限控制文件
    • passwd 是帐号密码文件
    • svnserve.conf 是SVN服务综合配置文件

    配置权限配置文件 authz

    现在请 编辑 authz ,内容参考如下:

    示例代码:/data/svn/myproject/conf/authz
    [groups]            
    #用户组
    admin = admin,root,test  
    #用户组所对应的用户
    [/]                 
    #库目录权限
    @admin = rw         
    #用户组权限
    *=r               
    #非用户组权限
    

    配置账号密码文件 passwd

    现在请 编辑 passwd ,内容参考如下:

    示例代码:/data/svn/myproject/conf/passwd
    [users]
    # harry = harryssecret
    # sally = sallyssecret
    admin = 123456
    root = 123456
    test = 123456
    

    配置 SVN 服务综合配置文件 svnserve.conf

    现在请 编辑 svnserve.conf ,内容参考如下:

    示例代码:/data/svn/myproject/conf/svnserve.conf
    [general]
    # force-username-case = none
    # 匿名访问的权限 可以是read、write,none,默认为read
    anon-access = none
    #使授权用户有写权限
    auth-access = write
    #密码数据库的路径
    password-db = passwd
    #访问控制文件
    authz-db = authz
    #认证命名空间,SVN会在认证提示里显示,并且作为凭证缓存的关键字
    realm = /data/svn/myproject
    
    [sasl]
    

    启动 SVN

    svnserve -d -r /data/svn
    

    checkout SVN项目

    mkdir -p /data/workspace/myproject
    svn co svn://127.0.0.1/myproject /data/workspace/myproject --username root --password 123456 --force --no-auth-cache
    

    提交文件到 SVN 服务器

    从本地提交文件到 SVN 服务器,其中 root 密码为 /data/svn/myproject/conf/passwd 文件存储的密码

    cd /data/workspace/myproject
    echo test >> test.txt
    svn add test.txt
    svn commit test.txt -m 'test'
    

    提交成功后可以通过如下命令从本地项目删除文件

    cd /data/workspace/myproject
    rm -rf test.txt
    

    删除后可以通过 SVN 服务器恢复

    cd /data/workspace/myproject
    svn update

  • 相关阅读:
    【深入学习MySQL】MySQL的索引结构为什么使用B+树?
    【Python爬虫】爬了七天七夜,终于爬出了博客园粉丝数排行榜!
    【BAT面试题系列】面试官:你了解乐观锁和悲观锁吗?
    深入学习MySQL事务:ACID特性的实现原理
    深入学习Redis(5):集群
    深入学习Redis(4):哨兵
    谈谈微信支付曝出的漏洞
    深入学习Redis(3):主从复制
    深入学习Redis(2):持久化
    Spring中获取request的几种方法,及其线程安全性分析
  • 原文地址:https://www.cnblogs.com/cxsabc/p/10627693.html
Copyright © 2011-2022 走看看