记录一下,以备忘了,以待后续

下载与安装

本文中采用的是subversion1.9.5和TortoiseSVN1.9.4
Note:服务端的版本一定要高于客户端

1.下载


TortoiseSVN下载地址(本机很早就下载使用,此处不介绍)

2.下载后解压至安装目录

svn连接仓库 svn有本地仓库吗_tortoisesvn

3.配置环境变量

环境变量path中最后加入D:\ProgramFiles\Apache-Subversion-1.9.5\bin(注意分隔符;)
Note:需要重启

启动服务

4. 创建SVN仓库

4.1 建立目录“E:\SVNRepository,存放所有仓库。

4.2 创建独立仓库,存放各个项目

命令行执行

svnadmin create E:\SVNRepository\dubbokeeperProject

成功执行后自动生成相关文件

svn连接仓库 svn有本地仓库吗_tortoisesvn_02

5.配置用户和权限

进入E:\SVNRepository\dubbokeeperProject\conf

5.1 修改svnserve.conf文件
原来配置为

# anon-access = read
# auth-access = write
# password-db = passwd
# authz-db = authz 
# realm = My First Repository

改为

anon-access = none     //未验证用户无任何权限
auth-access = write     //已验证用户给予写权限 
password-db = passwd      //密码数据存放到passwd文件中
authz-db = authz       //authz-db指明权限配置文件路径
realm = My First Repository
/**注意:每行行首都不能有空格**/

5.2 修改passwd文件

admin = admin

5.3 修改authz文件

[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
svnadmin=admin
[/]
admin=rw
# [/foo/bar]
# harry = rw
# &joe = r
# * =
# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r

Note:创建用户组并精确配置某个用户或用户组对某个文件或目录的访问权限。groups用于定义用户组,后面便是对资源的具体访问控制,/表示仓库根目录,*表示所有用户,用户组前面需加上@符号,r表示可读,w表示可写,等号 右边为空则表示没有权限。注意对于目录结构,当用户访问某个资源时,SVN会先看有没有直接针对该资源的访问控制,如果没有找到,则会继承上一级目录的访 问权限,如此递推。

6. 启动服务

6.1 建立服务

命令行执行

SC create svn1.9 binPath= "D:\ProgramFiles\Apache-Subversion-1.9.5\bin\svnserve.exe --service --root E:\SVNRepository" depend= Tcpip start= auto

执行结果

[SC] CreateService 成功

svn连接仓库 svn有本地仓库吗_tortoisesvn_03

Note:删除服务sc delete svn1.9

6.2 启动服务

右键启动服务(若无此选项,说明建立服务出错)

7. 测试

在F盘新建文件夹,在文件夹内部空白处点击右键,选择SVNCheckOut,Url repository填入svn://localhost/dubbokeeperProject,其他默认。点击OK,如果窗口Action有提示输入用户名、密码,输入admin,确认后生成.svn并将dubbokeeperProject文件夹下内容复制到此,说明操作成功。