当前位置:首页 > 编程相关 > SVN > 正文内容

在Linux上安装SVN、创建SVN仓库、配置账号/权限/提交时自动更新

martinsun3年前 (2021-01-19)SVN1.51 K

安装SVN

yum install subversion -y

安装完成后,可使用 svnversion --version 检测是否安装完成,出现版本号即安装成功。

创建SVN仓库

创建仓库使用的是svnadmin 命令,如创建test仓库,命令如下:

svnadmin create test

执行完成后,会在当前目录下生成test的仓库信息,如果需要创建到指定位置,将test改为指定路径即可。

配置SVN仓库账号与权限

这里推荐使用权限组进行管理,下面做简单的演示。

  • 第一步:配置仓库用户的账号密码

    切换至仓库的配置目录

    cd test/conf/

    编辑passwd文件,此文件为账号和密码的配置文件

    vim passwd

    提示: 如果没有vim命令,可执行yum install vim -y 安装。
    在文件中,可以看到

    此部分为填写账号和密码的位置,配置格式为

    账号 = 密码

    如添加用户martinsun,密码为123456,如下配置即可:

  • 第二步:配置用户组与权限

    编辑authz文件,此文件为用户组和权限的配置文件

    vim authz

    为了方便说明,在文件中做了如下配置:

    说明:

    • [groups]为用户组配置,在上图中,admin为用户组名称,等号后面为用户账号,多个以逗号分割。
    • [/] 此处表示为仓库内容的根目录,第一行的 @admin 代表的是上面的admin用户组,不加@符号代表的是用户账号,等号后面为权限,rw 表示读写权限; 第二行的 * =, 表示除了以上配置的用户组和成员,其他成员均无权限,需要注意的是,该项配置必须在最后!!!
  • 第三步:使配置生效

    编辑svnserve.conf文件,此文件为当前仓库的配置文件

    vim svnserve.conf

    在文件中,需要修改如下几个地方

    说明:取消上图中红框中的注释,将 anon-access = read 改为 anon-access = none,表示未授权的用户无权限访问仓库。

检出仓库至服务器上指定目录

可讲仓库检出到服务器上,如检出到 /web/test:

# 假设仓库存放在 /server/svnrepos/test
svn co file::///server/svnrepos/test/ /web/test

配置SVN自动更新

自动更新基于hook实现,需要切换至仓库的hooks目录
在目录中,执行下面的命令复制一个提交事件的文件配置

cp post-commit.tmpl post-commit

编辑post-commit文件在末尾加入

export LANG=zh_CN.UTF-8
svn up /web/test

赋予可执行权限

chmod +x post-commit

到此,SVN仓库的搭建与配置全部完成~

版权声明:本文由MartinSun发布,内容供学习参考使用。

图文说明:部分图文来源于网络,如侵权请联系删除。

本文链接:https://www.sunyonghong.com/?id=18

分享给朋友:

相关文章

SVN更新时忽略指定目录(不更新指定目录)

设置不更新某目录svn update –set-depth=exclude 目录(可以是多个,空格分开) 更新某目录svn update –set-depth infinity 目录...

SVN设置提交时必须填写备注(Message)信息

SVN设置提交时必须填写备注(Message)信息

本文介绍 SVN 如何配置在提交时,必须填写备注信息,方便后续根据提交日志做处理,有关SVN的安装与配置,可查看 在Linux上安装SVN、创建SVN仓库、配置账号/权限/提交时自动更新,这里不做阐述...