目录
一、SVN服务器搭建
二、TortoiseSVN客户端
一、SVN服务器搭建
注意:例如你已经安装Subversion,要将它卸载,因为VisualSVN会包含Subversion,确保不会发生冲突,可在Windows程序搜索Subversion 卸载它。
Apache Subversion Binary Packages
安装过程到选路径会有3个路径可选
Location 安装目录、Repositories SVN库目录、 Server Port 端口 改为8443、Backups 备份文件目录 最好都放到一个目录下例如:D:\Tools,然后分别建3个文件夹作为以上3个目录。
找到VisualSVN Server Manager运行
创建一个SVN库
直到下面这个图,会开放全部用户可读写库。
如果不想开放全部,只允许部分用户使用的话,比如只有某些成员能使用客户端库,其他成员无法访问服务器库,那么就要选用
添加用户或用户组设置权限即可。
创建用户操作如下
创建用户组操作如下
可以动态调整具体哪些用户可访问库
环境变量会自动配置好,Path变量下 D:\Tools\VisualSVN Server\bin
最新版直接使用VisualSVN可视化窗口去配置用户、用户组、用户权限,文件形式测试失效,可能与我使用TortoiseSVN可视化工具有关。
最新版可能已经不支持这种文件式改动配置了,也可能是我使用方法不对
可自由控制用户对库目录的访问权限 以及自定义库本地用户。
打开服务器库目录下conf目录的svnserve.conf文件(文本打开)
找到如下4行,将#去掉(注释去掉)
# anon-access = read
# auth-access = write
# password-db = passwd
# authz-db = authz
anon-access是匿名用户访问权限,默认只读,可设置为none(禁止读写)
auth-access经过认证的用户(需输账密认证)默认可读写
password-db = passwd 会使用同级目录conf/passwd文件作为本地用户文件(认证使用)
authz-db = authz 访问库时会进行认证(输账密认证)并使用conf/authz文件对本地用户限制权限打开passwd文件,添加我们本地用户。
xb=123456
之后我们会去使用TortoiseSVN 可视化操作检出这个库,需要输入账号密码即xb,123456
打开authz文件 对xb用户添加读写权限 对整个库都有读写权限
[/] xb = rw
二、TortoiseSVN客户端
Apache Subversion Binary Packages
同理可不安装在C盘,例如:D:\Program Files\TortoiseSVN
环境变量会自动配置好,Path变量下D:\Program Files\TortoiseSVN\bin
安装好后能正常看到右键菜单栏有
创建一个空文件夹,右键点击SVN Checkout,此时需要一个服务器SVN库URL地址,如下图获取
第一次进行检出时会询问账密,正常输入passwd文件指定的其中一个用户即可,但必须要有读取权限。
成功后会看到.svn文件(是一个隐藏文件)
提交SVN 查看日志能看到当前是什么用户
可以右键Settings - Saved Data 清空认证数据 来退出当前用户登录 切换到另一个用户。
进行任何SVN操作时会弹出认证
经过多次检查发现passwd和authz文件设置的用户或权限限制都无法正常生效,仅有可视化VisualSVN界面设置的用户和权限可生效。
调整用户访问目录权限
即other用户对工程下的OnlyRead目录只有Read Only权限,若想提交文件那是无法进行的