返回首页 - Notes - 2016

在 Ubuntu 上配置 Subversion


安装

sudo apt-get install subversion


创建仓库

  1. cd /home/ruchee:将仓库放置在个人主目录下
  2. mkdir svn:创建主仓库文件夹
  3. svnadmin create /home/ruchee/svn/hello:新建一个测试用的仓库
  4. cd /home/ruchee/svn/hello/conf:编辑仓库的一系列配置文件(后面详述)
  5. svnserve -d -r /home/ruchee/svn:启动 Subversion 服务器
  6. cd /home/ruchee
  7. svn checkout svn://localhost/hello hello --username ruchee --password 123456:测试能否正常拉取仓库文件(这里的用户名和密码是在第 4 步设置的)

远程访问

Mac 可用的客户端不多,免费的有 SnailSVN免费版,收费的有 VersionsSmartSVN


仓库配置

  1. vim /home/ruchee/svn/hello/conf/svnserve.conf
    [general]
    anon-access = none      # 不允许匿名用户访问
    auth-access = write     # 允许授权用户读写
    password-db = passwd    # 密码数据文件的位置,这里指向同级目录下的 passwd 文件
    authz-db = authz        # 用户授权文件的位置,这里指向同级目录下的 authz 文件
    
  2. vim /home/ruchee/svn/hello/conf/passwd
    [users]
    ruchee = 123456
    user2 = 123456
    user3 = 123456
    
  3. vim /home/ruchee/svn/hello/conf/authz
    [groups]
    admin = ruchee,user2,user3
    
    [/]
    @admin = rw    # admin权限组分配可读可写权限
    * = r          # 其它用户只分配可读权限
    

如果想每个仓库都设置一样的访问权限,为避免每次新建仓库都要手动设置一遍,可以将 svnserve.confpasswdauthz 放置到一个特定的目录,然后每个仓库的这三个配置文件都用软链接指向即可

(实测直接用上述配置覆盖会有问题,最好是对照上述配置,在生成的默认配置文件的基础上手动修改)


其它操作


date:2016-11-07