文章目录
当前系统版本CentOS6.7 64位 当前测试机IP192.168.0.70
废话不多说直奔主题
安装 {#title-0}
yum -y install subversion
|---|---------------------------| | 1 | yum -y install subversion |
查看当前svn版本号
svnserve --version
|---|--------------------| | 1 | svnserve --version |
建立svn仓库
mkdir -p /opt/svn
|---|-------------------| | 1 | mkdir -p /opt/svn |
执行下面命令创建项目版本库,会在/opt/svn/repos目录下生成conf db format hooks locks README.txt这几个文件
svnadmin create /opt/svn/repos
|---|--------------------------------| | 1 | svnadmin create /opt/svn/repos |
在/opt/svn/repos/conf目录下有三个文件authz passwd svnserve.conf
authz 是权限控制,可以设置哪些用户可以访问哪些目录,passwd是设置用户和密码的,svnserve.conf是服务综合配置文件
配置 {#title-1}
SVN的svnserve对于每个仓库,都有一个独立的配置文件和独立的用户、权限管理。
即使svnserve服务已经运行,修改配置文件或者用户、权限管理文件,保存后马上生效,不需要重启服务。
进入conf目录设置用户passwd,用户名whsir,密码123456
echo "whsir = 123456" >> passwd
|---|-----------------------------------| | 1 | echo "whsir = 123456" >> passwd |
设置权限authz,对所有目录有读写权限,也可以自行限定
echo "[/]" >> authz echo "whsir = rw" >> authz echo "* =" >> authz
|-------|-----------------------------------------------------------------------------| | 1 2 3 | echo "[/]" >> authz echo "whsir = rw" >> authz echo "* =" >> authz |
* =表示,除了上面设置了权限的用户组之外,其他任何人都被禁止访问本目录
附:多个用户添加到组中,控制组的权限
[groups]
admin = whsir,demo
[/]
@admin = rw
* =
设置svnserve.conf
[general] anon-access = none #不允许匿名用户访问 auth-access = write #通过验证的用户可以读写操作 password-db = passwd #用户帐号密码文件 authz-db = authz #权限管理文件 realm = My First Repository #仓库名称,可以自行设置
|-------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 1 2 3 4 5 6 | [general] anon-access = none #不允许匿名用户访问 auth-access = write #通过验证的用户可以读写操作 password-db = passwd #用户帐号密码文件 authz-db = authz #权限管理文件 realm = My First Repository #仓库名称,可以自行设置 |
启动 {#title-2}
以守护进程方式(--daemon)启动svn并指定svn端口为6666,这样同一服务器可以运行多个svnserve
svnserve -dr /opt/svn/repos --listen-port 6666
|---|------------------------------------------------| | 1 | svnserve -dr /opt/svn/repos --listen-port 6666 |
此时就可以用TortoiseSVN连接了
连接格式:svn://your server address:port