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拉取步骤如下:
输入账号密码即可