如何设置 SVN
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何设置 SVN相关的知识,希望对你有一定的参考价值。
参考技术A (一)安装Windows环境下面分了CollabNet / Tigris.org(Apache2.2和Apache2.0) / SlikSVN / VisualSVN 5个链接,我选的是Tigris Apache2.2,下载一个目前最新的Setup-Subversion-1.6.6.msi,点击,一路安装即可,很简单。
开始菜单-》运行-》输入Cmd回车,敲“svn --version --quiet”,会得到SVN的版本号。
(二)配置
1、创建repository
Rrepository是存储数据的地方。
例如要在F:\svnroot下创建repository,就使用命令行svnadmin create f:\svnroot。如果执行正确的话,会在F盘下多一个SVNROOT的目录,目录下有4个目录和2个文件。
2、启动SVN服务
使用命令行 svnserve -d -r f:/svnroot,这样外部就可以它能够过客户端来访问了。
我运行完才发现,这样cmd窗口还不得不一直开着,很难看,当然一般大公司的代码服务器是24小时开着的。
上网搜了一下,也可以作为一个服务自动启动的。执行脚本 sc create svn binpath= "\"d:\Program Files\Subversion\bin\svnserve.exe\" --service -r\"f:/svnroot\"" displayname= "Subversion Server" depend= Tcpip start= auto 就可以将svnserve程序作为服务载入。安装路径和存储数据的目录要根据自己的情况修改。
执行完这个脚本,可以去管理工具-》控制面板-》服务那里找找Subversion Server,如果没启动就启动
3、基本设置
修改f:|svnroot\repos\conf\svnserve.conf,注释很详细。
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = My First Repository
[sasl]
# use-sasl = true
# min-encryption = 0
# max-encryption = 256
期中,anon-access = none表示要用户名和密码,password-db = passwd表示passwd是存身份验证的用户名和密码。sasl,就是加密访问用的,一般也可以不用。
4、用户管理
在f:|svnroot\repos\conf\passwd里添加有权限的用户名和密码。例如添加用户yobin,密码123456,就这样:
[users]
# harry = harryssecret
yobin = 123456
hh = 111
ss = 222
5、分组管理和权限设置
如果是所有文件对用户都可见的话,上面几步也足够用了。但要想对一些人可见,一些人不可见的话,就要去修改authz文件了。
&别名:别名的引用
@用户组名:某组用户
$authenticated:所有已授权用户
$anonymous:匿名用户
* : 任何人
r:写权限
rw:读写权限
:不能访问(空,什么都不写)
设置用户权限的时候,'='左侧代表用户名称,可以是实际用户名,也可以是定义的用户组名,也可以是别名,但要用'@'作为前缀,或者是所有用户'*'。'='右侧代表设置的权限'r'、'rw'或者为空即代表用户对于该目录无任何权限。
authz文件中对版本库路径的表示方法。用'[/]'来表示版本库的根目录,如果有子目录foo,设置该目录权限时用'[/foo]'即可,其他任何目录都以'/'为版本根目录进行表示。注意了,别用”\“!!!
用户某个目录的权限是向子目录递归的。如果用户对于/foo目录有读写权限,则该用户对于foo目录下的所有子目录都有读写权限。如果不设置最上层的目录没有设置权限,那么就相当于不设置,禁止访问。
权限分配,只可以分配到某个目录,而不能到某个文件。
使用 Tortoisesvn 创建新的 SVN 存储库时如何设置存储库路径
【中文标题】使用 Tortoisesvn 创建新的 SVN 存储库时如何设置存储库路径【英文标题】:how does the repository path is set when creating a nw SVN repository using Tortoise SVN 【发布时间】:2016-05-06 07:27:03 【问题描述】:我想知道当我们使用 tortoise SVN 创建一个新的存储库时,有没有办法找到一个新创建的 SVN 存储库的路径是如何设置的。由于 Tortoise SVN 工具在创建之前只询问存储库名称,那么存储库的路径是如何设置的。有没有办法在创建存储库之前定义或选择路径?
【问题讨论】:
使用 Windows 资源管理器在您希望存储库所在的位置创建一个新文件夹。在资源管理器中右键单击该文件夹,选择 TortoiseSVN 菜单,然后选择 在此处创建存储库...。 【参考方案1】:我假设您在 Windows 服务器上?我没有使用 TortoiseSVN 创建存储库(我们在 Linux 上托管我们的存储库),但根据documentation,它是在当前目录中创建的。该命令似乎是“在此处创建存储库”,这意味着它放置在当前目录中。
大多数 SVN 管理员只使用命令行工具“svnadmin”(如果您在 TortoiseSVN 安装过程中添加命令行工具即可安装)。这总是在当前目录中创建存储库(除非您提供绝对路径)。在这种情况下,您可以:
C:> cd \SVN
C:> svnadmin create REPONAME
这会将您的 repo 放在 C:\SVN\REPONAME。
【讨论】:
以上是关于如何设置 SVN的主要内容,如果未能解决你的问题,请参考以下文章