Linux搭建svn服务器

本例使用阿里云的ECS服务器,系统为Ubuntu 14.0.4

  • 安装subversion
    sudo apt-get install subversion
  • 可以输入apt-get install subversion,按下两次tab键,查看是否有subversion
  • 确认有subversion后,然后安装,中途需要确认一次,输入y按回车键
  • 安装完成后,创建仓库的目录,本例放在/home目录下
cd /home/
mkdir svn
cd svn
mkdir iOS
  • 新建一个版本仓库
svnadmin create /home/svn/iOS
  • 创建之后在/home/svn/iOS下,有

  • conf/

  • db/

  • format

  • hooks/

  • locks/

  • README.txt

  • 进入conf目录

cd conf/
  • vi svnserve.conf,将下面的注释打开
    并修改anon-access = none,表示不在授权名单中的用户无法访问仓库
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
  • vi password。添加用户
smh=smh123
hhc=huhuachao

用户名=密码

  • vi authz
[groups]#用户组,下面有两个用户组admin和coder
admin=mw
coder=smh,hhc

# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe

# [/foo/bar]
# harry = rw
# &joe = r
# * =

# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r

#子目录配置,可以先配置根目录权限,用根目录权限中的账号checkout之后,再创建子目录提交
#用户组coder中的用户在/android子目录有读写权限。
#*=表示其他用户没有权限,如果要其他用户有读权限,可以这样设置*=r
[/android]
@coder=rw
*=
[/server]
hhc=rw
*=
#跟目录配置,根目录只有mw这个用户有读写权限
[/]
mw=rw
*=
  • 启动svnserve进程
    svnserve -d -r /home/svn [--listen-port 3690]
  • -d表示后台运行
  • -r /home/svn 表示指定根目录
  • --listen-port 3690表示指定端口,默认就是 3690,所以如果要用默认端口这个也是可以省略掉的
  • 如果开启了防火墙,需要防火墙将3690端口放行

这里注意,绝对不能svnserve -d -r /home/svn/iOS/ [--listen-port 3690]

  • 重启svnserve进程
killall svnserve
svnserve -d -r /home/svn [--listen-port 3690]
  • 也可以这样重启
ps aux|grep svnserve

查看进程id,然后

kill -9 进程id

然后启动svnserve进程

svnserve -d -r /home/svn [--listen-port 3690]

你可能感兴趣的:(Linux搭建svn服务器)