linux下搭建svn服务器

2019-12-18 16:17:03 浏览数 (1)

1.svn简介:

Apache Subversion 通常被缩写成 SVN,是一个开放源代码的版本控制系统,Subversion 在 2000 年由 CollabNet Inc 开发,现在发展成为 Apache 软件基金会的一个项目,同样是一个丰富的开发者和用户社区的一部分。

2.svn安装

代码语言:javascript复制
centos: yum install subversion
Ubuntu:apt-get install subversion

3.启动svn

代码语言:javascript复制
svnserve -d -r 目录 --listen-port 端口号

示例:

代码语言:javascript复制
svnserve -d -r /var/local/svn --listen-port 23333
svnserve -d -r /var/local/svn (默认端口3690)

4.创建版本库

svnadmin create 目录

示例

代码语言:javascript复制
svnadmin create /var/local/svn (版本库路径为:svn://192.168.0.1/ 或 svn://192.168.0.1:23333/)
svnadmin create /var/local/svn/lzcit (版本库路径为:svn://192.168.0.1/lzcit 或 svn://192.168.0.1:23333/lzcit)

5.修改配置文件

配置文件路径:/var/local/svn/lzcit/conf

5.1

svn服务配置文件svnserve.conf

代码语言:javascript复制
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz

anon-access: 控制非鉴权用户访问版本库的权限,取值范围为"write"、"read"和"none"。 即"write"为可读可写,"read"为只读,"none"表示无访问权限。 默认值:read。

auth-access: 控制鉴权用户访问版本库的权限。取值范围为"write"、"read"和"none"。 即"write"为可读可写,"read"为只读,"none"表示无访问权限。 默认值:write。

password-db:用户名口令文件

authz-db:权限配置文件authz

5.2

用户名口令文件passwd

[users]

代码语言:javascript复制
#账号 = 密码
admin = admin
thinker = 123456

5.3

权限配置文件authz

代码语言:javascript复制
[groups]
#用户组 = 用户名1,用户名2
admin = admin1,admin2
mp = mp1,mp2

#[<版本库名>:<路径>] 

[lzcit:/]

#@用户组 = 权限

#用户 = 权限

@admin = rw

mp1 = r

#设置对版本库根目录用户组admin可读可写,用户mp1可读

[lzcit:/test]

#@用户组 = 权限

@admin = r

mp1 = r

mp2 = 

#设置对版本库根目录下的test下用户组admin可读,用户mp1可读,用户mp1不可读不可写(不显示)

#r为可读,rw可读可写,空为不可读不可写

6.客户端连接

6.1 linux拉取

svn co svn://192.168.0.1:23333/lzcit 或 svn checkout svn://192.168.0.1:23333/lzcit

svn co svn://192.168.0.1/lzcit 或 svn checkout svn://192.168.0.1/lzcit (端口为3690)

6.2 window拉取

windows需要下载:TortoiseSVN

window拉取步骤如下:

输入账号密码即可

0 人点赞