richcem

~· 空 ·~

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

1.下载程安装SVN服务器和TortoiseSVN

2.创建SVN仓库

  • 使用svn命令:

- svnadmin create D:\svnRoot

  • 使用TortoiseSVN:

- 右键->TortoiseSVN->在此创建版本库

svn

3.开启svn服务

  • 命令行开启

-svnserve –d –r D:\svnRoot

  • 或者将svnserve设置为系统服务

-sc create SVNserve binPath= "c:\Program Files\Subversion\bin\svnserve.exe --service -r D:\svnRoot" DisplayName= "SVNserve" depend= Tcpip start= auto

sc create : 创建一个系统服务
SVNserver 服务名字,当删除该服务的时候使用
binPath= "c:\svn\bin\svnserve.exe --service -r d:\dyu_repo" 服务的可执行文件和参数
DisplayName= "SVNService" 显示的服务名称,在管理工具->服务中查看时看到的名称
depend= Tcpip start= auto 该服务依赖项和启动方式,自动启动

需要注意,在上面的命令行中,所有的"="后面都必须有空格,另外注意引号格式 

 

  • 删除svn服务

- sc delete SVNServe

 

4.配置svn用户和密码

  • 配置用户和权限

来到E:\svndemo\repository\conf目录,修改svnserve.conf:
# [general]
# password-db = passwd
改为:
[general]
password-db = passwd

然后修改同目录的passwd文件,去掉下面三行的注释:
# [users]
# harry = harryssecret
# sally = sallyssecret
最后变成:
[users]
harry = harryssecret
sally = sallyssecret

在passwd文件中,“=”前的字符就是用户名,后面的就是密码。还要注意“[users]”前面的注释“#”一定要删除掉。

 

  • SVN权限管理

svn的权限管理涉及到一下文件:
passwd文件   --   /conf目录下   用于存放本svn库的用户名和密码,用 = 分割,左边是用户名,右边是密码(明文)。
authz   --   /conf目录下   用于存放本svn库的访问授权信息。
SVNserve.conf   /conf目录下   用于存放本svn库的全局访问控制信息。


最重要的是authz文件,它定义了两部分的内容:
1,对组成员的定义,
2,对目录的授权定义,
可以针对一个单一用户授权,也可以针对在[groups]里面定义的一个组授权,还可以用*通配符来对所有的用户授权,
授权的选项有:只读访问('r'),读写访问('rw'),或者无权防问('').
authz文件中可以对任意多个目录进行权限控制,一下是一个例子:
[groups]
# 注释行,定义了admin和ph两个组以及两个组的成员
admin = harry,sally
ph = hy,jim
[/foo/bar]
harry = rw
# 以*为键值意味着对所有人都进行权限控制
* =
# 以@为键值意味着对前面定义的组进行授权
@admin = rw

posted on 2011-01-08 17:45  richcem  阅读(1223)  评论(0编辑  收藏  举报