ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Subversion svnserve 服务配置 整理

2019-06-24 22:48:58  阅读:233  来源: 互联网

标签:svnserve authz group repos Subversion 整理 权限 目录


  1. 安装是SVN和TortoiseSVN

            下载SVN服务器安装文件:Setup-Subversion-1.6.17.msi ,运行安装。

            下载客户端安装文件:TortoiseSVN-1.6.16.21511-win32-svn-1.6.17.msi,然后运行安装,安装成功后必须重启计算机。也可以根据需要加载中文语言包(不建议使用)。

   2.  创建SVN资源库

           SVN资源库(版本库)的创建有两种方式:命令行方式和客户端方式。

         命令行方式:svnadmin create D:\svn\repos(注意目录路径名区分大小写)

        客户端方式:通过TortiseSVN来创建,在本地新建目录D:\svn\repos,选中文件夹repos,右击“TortoiseSVN——Create repository here”

clip_image002

                  

     3. 创建基于windows服务svnserver服务

                    运行cmd命令输入:sc create svnserve binpath= "C:\Subversion\bin\svnserve.exe --service --root D:\svn\repos" displayname= "svnserve" depend= tcpip          start=  auto

                上述命令可以实现名为“svnserve”服务的后台创建和自动启动。但是需要注意下列两点:

                    a.  如果任意的路径中含有空格,需要使用 转义字符\,如:

                            sc create svnserve binpath= "
                            \"C:\Program Files\Subversion\bin\svnserve.exe\"
                              --service --root c:\repos" displayname= "Subversion" 
                               depend= tcpip start= auto

                    b.

                              注意 sc 的命令行很特殊。在 key= value 对中,key 与 = 之间不能有空格,但是在 value 之前,必须有空格。

     4 . 用户的管理

                    在 Subversion 的使用当中,存在“认证”、“授权”两个概念。认证,即 authentication,是指用户名与密码的认证。授权,即authorization ,是指某用户

是  否具备读、写权限的一种审核。这两者配合作用,就组成了 Subversion 的整个账户管理体系。

   为了使用用户及权限管理功能文件,必须在服务器端打开D:\svn\ repos\conf\svnserver.conf,去掉下面四行前面的注释,并去掉前面的空格:

                          # anon-access = read

                         # auth-access = write

                        # password-db = passwd

                            # authz-db = authz

                         并将read参数修改为none,表明禁止匿名用户访问版本控制库。

                          password-db = passwd表示用户名和密码所在的资源文件,后面的passwd就是所设定的文件,会在svnserver.conf文件所在的目录下找到上述文件,后面也可以配置成     passwd文件所在目录的路径的形式,如../passwd,表示在svnserver.conf的上级路径的目录下

                       authz-db = authz表示授权文件,主要设置用户组’及用户组对于特定目录的权限.

                      打开passwd文件,

                            添加如下形式:  zsf = ustb

                                 zsf是设定的用户名,ustb是密码。zsf前面不要留空格。

                 注意:
                          权限配置文件中出现的用户名必须已在用户配置文件中定义。
                            对权限配置文件的修改立即生效,不必重启svn。

                              为了实现多项目的权限管理,多个项目共享相同的位于根资源库下的配置及认证文件。

  5. 权限的配置

Subversion 提供了面向目录的账户权限管理功能,通过它,我们就可以很精确地实现项目目录的访问控制。

创建完资源库后,出现的authz为认证后的账户访问权限授权文件。

假设目录结构如下:

Project

     dev

      test

             test1

             test2

要求:

1、admin对所有目录可读可写

2、 Dev_group对dev目录可读可写,Test_group无权限

3、 Test_group对test目录可读可写,Dev_group无权限

打开D:\SVNServer\ repos\conf\authz,对上面的用户添加分组:

[groups]

# harry_and_sally = harry,sally

Admin_group = admin

Dev_group = sc1,sc2

Test_group1 = tom1, tom2

[/] //对根目录的权限控制

@admin_group = rw

* = r

[/Cloud /dev] //对具体目录的权限控制

@ admin_group = rw

@ Develop_group = rw

* = //其他用户无权限

[/Cloud/test] //对具体目录的权限控制

@ admin_group = rw

@ Test_group = r

* =

备注:

1、 如果需要控制的文件夹为中文名称,需要把authz转换为UTF-8格式,建议使用UltraEdit的“文件——转换——ASCII to UTF-8”(我尝试过记事本转换未遂)。

若project下新增文件夹,一定要对新文件夹增加权限控制,否则所有人默认为可读。

6. 数据段导入

       择你的项目的顶层目录,右击打开上下文菜单。选择命令TortoiseSVN → 导入 ...,它会弹出一个对话框:

              

       

无标题

      

    在弹出的对话框里面,根据提示输入  用户名和密码,确定后进行导入。

转载于:https://www.cnblogs.com/zhangshufeng/archive/2011/08/03/2126534.html

标签:svnserve,authz,group,repos,Subversion,整理,权限,目录
来源: https://blog.csdn.net/weixin_34194702/article/details/93532304

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有