当前位置:首页 > CN2资讯 > 正文内容

tortoisesvn服务器搭建windows server

2天前CN2资讯


下面分享一下前段时间我搭建SVN服务器的方法,希望能对需要的人有所帮助;

我把svn服务器的搭建分成两个成次,1、是使用svn协议,这个适用于个人,如果个人作一些自己的项目,这个完全可以满足你的需要;2、是使用http协议+公司的LDAP,这个适用开发团队,它是在1层次的基础上做了进一步的设置

一、svn协议的svn服务搭建

1、下载 Setup-Subversion-1.7.0.msi,这个是svn服务器端的安装包;安装过程非常简单,你可以选择默认的配置,一直下一步就可以了,但要记住安装目录,后面会使用;

     下载地址:

2、创建一个Test库

(1) 首先创建SVN库的目录位置,我的位置是 D:\SubversionRepositories\Test

(2)  进入到刚才安装的Setup-Subversion-1.7.0.ms目录下的bin目录 E:\SVN\1.7.0\bin;

(3) 执行 svnadmin create D:\SubversionRepositories\Test\repo    为了使创建后的SVN库目录结构更清晰,我又加了一层repo目录

(4) 上面的命令执行完,在D:\SubversionRepositories\Test\repo目录下会生产一些文件及文件夹,我们进入到D:\SubversionRepositories\Test\repo\conf目录下

            用文件编辑器打开svnserve.conf,将authz-db = authz和password-db = passwd前面的“#”号去掉,去掉后要保证authz-db = authz和password-db = passwd前不要留有空格,并保存;这个设置是在指定存放用户和用户密码的文件

            用文件编辑器打开authz,在[groups]的下面追加一行cml = test  追加这行的意思是创建了一个cml的用户组,用户组中只有test一个成员,如果有多个成员可以用逗号分隔;

            再在# [/foo/bar]的下面追加两行 [/]和@cml = rw 意思是cml用户组具有svn库根目录的读写权限,设置后的authz文件如下:

   

### This file is an example authorization file for svnserve. ### Its format is identical to that of mod_authz_svn authorization ### files. ### As shown below each section defines authorizations for the path and ### (optional) repository specified by the section name. ### The authorizations follow. An authorization line can refer to: ### - a single user, ### - a group of users defined in a special [groups] section, ### - an alias defined in a special [aliases] section, ### - all authenticated users, using the '$authenticated' token, ### - only anonymous users, using the '$anonymous' token, ### - anyone, using the '*' wildcard. ### ### A match can be inverted by prefixing the rule with '~'. Rules can ### grant read ('r') access, read-write ('rw') access, or no access ### (''). [aliases] # joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average [groups] # harry_and_sally = harry,sally # harry_sally_and_joe = harry,sally,&joe cml = test # [/foo/bar] # harry = rw # &joe = r # * = [/] @cml = rw # [repository:/baz/fuz] # @harry_and_sally = rw # * = r

(5)用编辑器打开passwd文件

          在[users]标签下追加一行test = 123456  意思是设置test用户的密码为123456

3、启动svn服务

  以上几步设置完毕后就完成了svn协议的svn服务的创建及配置,接下来就要启动svn服务

(1)还是要进入到E:\SVN\1.7.0\bin目录下

(2)执行 svnserve.exe -d -r  D:\SubversionRepositories\Test\repos 正常情况下就应该可以启动了

(3)如果要停止svn服务按“ctrl+c”强制终止


4、验证svn库是否创建成功

(1)、安装TortoiseSVN-1.6.5.16974-win32-svn-1.6.5.msi  svn服务的客户端

             下载地址:

(2)、在桌面或任意位置,右键鼠标->TortoiseSVN->Repo-browser

(3)、输入svn://localhost/Test/repo/

(4)、用户名和密码输入刚才创建的test 和123456就可以了;

经过以上几步你就可以进入到你创建的SVN库了;


二、http协议+公司的LDAP服务的SVN库搭建

以下是在《一、svn协议的svn服务搭建》的基础之上进行的,如果要使用http和LDAP,《一、svn协议的svn服务搭建》中“2、创建一个Test库”的(4)步骤就可以不用做

(一)、http协议协议的SVN库的搭建

   1、使用httpd-2.2.22-win32-x86-openssl-0.9.8t.zip安装apache服务,安装路径最好不好安装到C盘,我安装到E:\Apache2.2目录下,安装过程中提示输入的信息可以随意写

         下载地址:

   2、将刚才Setup-Subversion-1.7.0.ms安装目录E:\SVN\1.7.0\bin下的mod_dav_svn.so和mod_authz_svn.so文件复制到apache的安装目录E:\Apache2.2\modules下面

   3、将LoadModule dav_module modules/mod_dav.so和LoadModule dav_fs_module modules/mod_dav_fs.so前面的“#”号去掉,不要留空格

   4、在LoadModule 模块部分的最后追加以下两行

    LoadModule dav_svn_module modules/mod_dav_svn.so

    LoadModule authz_svn_module modules/mod_authz_svn.so

   5、将ServerAdmin设成服务器管理员的邮箱;ServerAdmin zhu_ym@

   6、将ServerName设成   ServerName 10.1.1.246:80

   7、在文件的末尾追加一下信息:

<Location /subversion/Test> DAV svn SVNParentPath D:\SubversionRepositories\Test SVNListParentPath On AuthType Basic AuthName "test1_CODE repos" AuthzSVNAccessFile D:\SubversionRepositories\Test\authz AuthUserFile D:\SubversionRepositories\Test\passwd Require valid-user </Location>

   8、把上次创建好的D:\SubversionRepositories\Test\repo\conf\authz用户文件复制到D:\SubversionRepositories\Test目录下,目录随意,只要和7中的AuthzSVNAccessFile D:\SubversionRepositories\Test\authz保持一致及可

   9、密码文件不能使用上次的创建的密码文件,因为http使用的是加密密码文件,我们要进入到apache的安装目录下E:\Apache2.2\bin,运行htpasswd.exe -c  D:\SubversionRepositories\test1\passwd test

        注意要和7中AuthUserFile D:\SubversionRepositories\Test\passwd的目录位置一致;第一次因为没有passwd文件,所以要添加-c参数,以后添加新用户和修改用户密码时就不要添加-c参数了

   10、重启apache服务,如果重启服务启动不了可以重启一下机器试试,不行就看apache安装目录E:\Apache2.2\logs下的log信息,如果没意外重启机器应该可以使apache正常运行

   11、在桌面或任意位置,右键鼠标->TortoiseSVN->Repo-browser输入http://10.1.1.246//subversion/Test/repo

   12、用户名输入test和你刚才创建的新密码就可以了

(二)连接LDAP服务器

有的公司有自己的LDAP服务器来统一管理公司成员的用户密码,下面介绍一下如何配置apache来与LDAP服务器关联

1、“(一)、http协议协议的SVN库的搭建“中的第9步可以省略,因为密码要使用公司的LDAP服务器来管理

2、将“(一)、http协议协议的SVN库的搭建“中的第7步,追加信息修改为

<Location /subversion/Test> DAV svn SVNParentPath D:\SubversionRepositories\Test SVNListParentPath On AuthzSVNAccessFile D:\SubversionRepositories\Test\authz AuthBasicProvider ldap AuthType Basic AuthzLDAPAuthoritative off AuthName "<Test代码库>" AuthLDAPURL "ldap://*****.com:****/DC=****,DC=internal?sAMAccountName?sub?(objectClass=*)" NONE AuthLDAPBindDN "CN=***,ou=people,DC=*****,DC=internal" AuthLDAPBindPassword "*****" Require valid-user </Location>



  

   






    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/30259.html

    分享给朋友:

    “tortoisesvn服务器搭建windows server” 的相关文章

    APT攻击是什么及其防御措施详解

    APT攻击(Advanced Persistent Threat,高级持续性威胁)是一种复杂而长期的网络攻击模式。在我了解这个概念的过程中,逐渐意识到它不仅仅是一种攻击手段,而是一个精密的、组织化的网络战争策略。APT攻击的敌对方通常具备高超的技术能力和丰富的资源,他们的目标是破坏组织的核心设施,或...

    注册域名的全面指南:选择合适域名的重要性和流程

    在当今数字化的时代,注册域名对企业和个人来说都是至关重要的。域名不仅是一个网站的名字,更是一个在网络空间中的唯一标识符。它能帮助用户快速记住你的品牌,提升他们对你的信任度。如果没有一个合适的域名,用户可能会在茫茫互联网中迷失方向,导致潜在客户流失。 我个人在选择域名时,充分意识到其独特的价值。一个好...

    Cloudflare域名解析教程:轻松设置与优化网站性能

    在网络安全和性能优化方面,Cloudflare无疑是一个备受青睐的选择。它不仅为网站提供了强大的DNS解析服务,还有助于提升访问速度和保护网站免受各类网络攻击。我在使用Cloudflare的过程中,逐渐了解了什么是Cloudflare以及它的多种功能和优势。 首先,我们需要知道Cloudflare是...

    OVH 黑五促销活动详解:服务器折扣与购买指南

    OVH 黑五活动概述 在每年感恩节后的第一天,黑色星期五(Black Friday)成了一年中最大的购物盛事之一。它起源于美国,最初是零售商为了清理库存而设立的特价销售日。随着时间的推移,黑五的影响力逐渐扩展至全球,成为各种行业都参与的一次购物狂欢。对于消费者而言,这不仅是一次购物机会,更是寻找到心...

    奈飞检测脚本:保障账号安全的有效解决方案

    在了解奈飞检测脚本之前,先从它的定义说起。简单来说,奈飞检测脚本是一种用于自动化检测奈飞账户状态的程序。通过这类脚本,用户能够快速确认自己的奈飞账号是否存在被盗、被共享或其他潜在的安全问题。这样一来,用户可以及时采取措施,保护自己的账户安全。 接下来,聊聊奈飞检测脚本的工作原理。这些脚本通常通过模拟...

    国外常用的远程连接软件推荐与安全使用指南

    在这个数字化迅速发展的时代,远程连接软件变得越来越重要。简单来说,远程连接软件是一种能够让用户通过互联网连接并控制另一台计算机的工具。这个概念最初可能让人感到陌生,但其实它早已渗透到我们的日常工作和生活中。无论是在家工作、技术支持,还是与朋友共享屏幕,这类软件都发挥着巨大的作用。 我想,如果没有远程...