linux下使用svn创建版本库和权限管理
Posted MargoHu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下使用svn创建版本库和权限管理相关的知识,希望对你有一定的参考价值。
linux上的svn服务端如何和本地的电脑客户端结合使用
Linux上安装SVN服务器:
第一步:检查是否已安装
# rpm -qa subversion
第二步: 通过yum命令安装svnserve,命令如下:
>yum -y install subversion
# yum -y install subversion
此命令会全自动安装svn服务器相关服务和依赖,安装完成会自动停止命令运行
若需查看svn安装位置,可以用以下命令:
>rpm -ql subversion
# rpm -ql subversion
一、linux上创建本版库与权限访问
1.创建版本库目录(此仅为目录,为后面创建版本库提供存放位置)
选择在var路径下创建版本库,当前处于根目录下,一次性创建如下:
>mkdir /opt/svndata
# 创建版本库根目录 # mkdir /opt/svndata # 进入目录 # cd /opt/svndata
2.svn create 创建svn版本库
语法:svnadmin create /directory
vim passwd之后进入文件并添加用户和密码(本地检出的时候会用到)
4.修改svn启动项参数 svnserver.conf
命令:vim svnserve.conf
配置项分为以下5项:
即"write"为可读可写,"read"为只读,"none"表示无访问权限。
缺省值:read
auth-access 控制鉴权用户访问版本库的权限。取值范围为"write"、"read"和"none"。
即"write"为可读可写,"read"为只读,"none"表示无访问权限。
缺省值:write
password-db 指定用户名口令文件名。除非指定绝对路径,否则文件位置为相对conf
目录的相对路径。
缺省值:passwd
authz-db 指定权限配置文件名,通过该文件可以实现以路径为基础的访问控制。
除非指定绝对路径,否则文件位置为相对conf目录的相对路径。
缺省值:authz
realm 指定版本库的认证域,即在登录时提示的认证域名称。若两个版本库的
认证域相同,建议使用相同的用户名口令数据文件。
5.配置用户权限 authz
命令:vim authz
* 权限配置文件中出现的用户名必须已在用户配置文件中定义。
* 对权限配置文件的修改立即生效,不必重启svn。
用户组格式:
[groups]
<用户组名> = <用户1>,<用户2>
其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。
版本库目录格式:
[<版本库>:/项目/目录]
@<用户组名> = <权限>
<用户名> = <权限>
其中,方框号内部分可以有多种写法:
/,表示根目录及以下。根目录是svnserve启动时指定的,我们指定为/opt/svndata。这样,/就是表示对全部版本库设置权限。
repos1:/,表示对版本库1设置权限
repos2:/occi, ,表示对版本库2中的occi项目设置权限
repos2:/occi/aaa, ,表示对版本库2中的occi项目的aaa目录设置权限
权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限。
6.启动服务
svnserve -d -r /home/svnrepo/myproject/
二、本地新建一个目录,然后右键检出(checkout)。前提是Windows安装了svn客户端
例如:iot2
点击OK,就会提示需要输入用户和密码,直接输入刚刚在vim passwd设置的。
成功后目录会有个绿色的小勾
三、进入服务器中,你想将本地的文件夹检出的位置。例如:cd /var/www/
输入命令:svn co svn://119.23.79.11/iot 或 svn co svn://119.23.79.11/iot
--username 用户名 --password 密码 回车
就会检出到目录 /var/www/iot下了
接下来就可以在本地写代码,提交到服务器。在/var/www/iot目录下svn up了
资料来源参考:https://blog.csdn.net/yin380697242/article/details/49362197
以上是关于linux下使用svn创建版本库和权限管理的主要内容,如果未能解决你的问题,请参考以下文章