zoukankan      html  css  js  c++  java
  • 快速设置svn服务器

    快速设置svn服务器(程序开发,文档管理)

    在windows下,用同样的命令也可以,只是关掉cmd窗口后,服务也消失了。这个问题的解决办法,在subversion的1.4版以前,是用svn windows service wrapper,将其包装为服务。而svn1.4以后,是可以直接支持以服务器启动的。方法就是利用windows xp,2000自带的工具service control,执行文件是sc.exe。
    注意:要想使用"sc"命令必须安装Windows 2000/2003 Resource Kit(资源工具包),否则使用该命令无效。
    在cmd窗口输入命令如下:

    sc create svnservice binpath= "C:\Program Files\Subversion\bin\svnserve.exe --service -r D:\svnroot" displayname= "SVNService" depend= Tcpip start= auto

    binpath指定svnserve的路径和命令。注意其参数是--service,而不是--daemon. 不能用-d和-i,-t等参数。start= auto表示服务自动启动。注意,等于号的左边无空格,而右边必须有一个空格。

    执行完后,系统返回

    [SC] CreateService SUCCESS

    表示服务创建成功。

    然后执行

    net start svnservice

    启动服务。系统返回

    svnservice 服务正在启动 .
    svnservice 服务已经启动成功。

    执行

    net stop svnservice

    停止服务,系统返回:

    svnservice 服务正在停止.
    svnservice 服务已成功停止。

    执行

    sc delete svnservice

    删除服务。创建相同服务前必须删除

    Error: Can't connect to host *.*.*.*': 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。

    出现以上错误可能是由于SVN端口问题,解决办法如下:

    svnserve -d -r d:/svn  --listen-port 3690

    后面的端口号自己可以自定,3690是默认的。


    svn服务器安装配置
    1.安装svn-1.3.0-setup.exe(可以在http://subversion.tigris.org/下载得到)
    2.安装成功后,在命令行输入svnadmin create D:\svnhome\workflow,建立工程,svn自动会
    在该目录下建立若干文件
    3.在该目录下有password文件,在此文件中增加用户和密码格式如下
    [users]
    admin = 123
    在svnserve.conf文件中增加
    [general]
    anon-access = read
    auth-access = write
    password-db = passwd
    realm = svnhome
    到这一步svn服务器已经配置完成了,下面是导入需要版本控制的工程
    4.在命令行执行import命令
    例如:D:\svnhome\workflow>svn import D:\eclipse\workspace\Workflow
    file:///D:/svnhome\workflow -m "initial import"
    回车后命令窗口显示
    新增           D:\eclipse\workspace\Workflow\.classpath
    新增           D:\eclipse\workspace\Workflow\.project
    新增           D:\eclipse\workspace\Workflow\src
    新增           D:\eclipse\workspace\Workflow\src\com
    新增           D:\eclipse\workspace\Workflow\src\com\bright
    新增           D:\eclipse\workspace\Workflow\src\com\bright\sw
    ......
    ......
    提交后的修订版为 1。
    说明工程引入svn控制成功
    5.最后在命令行执行svnserve -d命令,启动svn服务


    Subversion 项目的初衷是为了替换现在开源社区最为流行的版本控制软件 CVS,在 CVS的功能的基础上有很多的提升同时也能较好的解决 CVS 系统的一些不足,这些提升主要包括以下的一些方面:
        1. 目录、文件以及改名等元数据的版本化
    不同于 CVS 只关心文件的内容以及文件是否存在,所有文件、目录的相关操作都是被版本化的,例如文件的改名、拷贝等等;
        2. 提交操作是真正的原子操作
    在 Subversion 中,提交操作是不可分割的,修订版本号是基于每次提交操作而非文件。提交日志被附加在每个修订版本中,而不是像 CVS 一样冗余的进行存储;
        3. 可通过 Apache 服务器提供基于 WebDAV/DeltaV 协议的支持
    该功能可使 Subversion 通过 Apache Web 服务器使资源库更加灵活的在网上进行共享,使其在互操作性上大大优于 CVS;
        4. 可独立运行
    当你不想使用 Apache 2.x 时候,你也可以使用 Subversion,它可以以守护进程或者是Windows 下的服务方式独立运行;
        5. 分支(Branching)与标签(Tagging)操作是轻量级的;
        6. 客户服务器端分层库结构设计;
        7. 资源库可以采用数据库(BerkeleyDB)或者是使用特定格式的文件进行存储;
        8. 更有效的对二进制文件进行处理。
    在Windows下安装最为方便的办法就是下载安装程序包,详细过程如下:
    1.安装程序与下载说明
     Apache Web服务器 :http://httpd.apache.org/download.cgi
           (Apache2.0.X版,我用的是2.0.59版;用2.2.X在windows下配置文件修改后无法启动!)
     Subversion :(http://subversion.tigris.org/files/documents/15/35379/svn-1.4.2-setup.exe)
       TortoiseSVN 客户端工具 (TortoiseSVN-1.4.1.7992-win32-svn-1.4.2.msi)
     2. 程序安装
     (1)Apache2.0.59安装
        防止安装有问题,在安装前我先将IIS端口改为8080,然后按提示安装完成
        打开 http://loccalhost,如果能出现内容,那你的Apache就安装成功了。
        注:如果你将Apache安装成一个服务,它将以本地system帐户来运行。为Apache创建一个单独的用户来运行它将会更安全一些。
        请确保运行Apache的用户有版本库的完全访问权限(右键版本库目录->属性->安全)。要不然,用户将无法提交他们的更改。就算Apache以本机system来运行,你也要设置它能完全读写版本库目录。
        如果没有为Apache配置这个许可,用户将会得到"禁止访问"的错误信息,在Apache的错误日志中表现为错误500。

        (2)运行Subversion安装程序,如果安装程序能够识别你已经安装了Apache,那么你的安装基本上就OK了。如果它不能(我的机器未能识别),那么你需要做以下手工配置:
         注:如果你先安装Apache,再安装Subversion,正常情况下下面的工作(2.3配置前)Subversion安装程序已经帮你完成了使用资源管理器,进入Sibversion的安装目录(通常为c:\program files\Subversion),找到文件httpd/mod_dav_svn.so和mod_authz_svn.so,将它们拷贝到Apache的modules目录(通常为c:\program files\apache group\apache2\modules)。

    从Subversion的安装目录拷贝文件libdb43.dll到Apache的modules目录。

    使用如记事本之类的文本编辑器编辑Apache的配置文件(通常为c:\program files\apache group\apache2\conf\httd.conf),修改以下内容:

    去掉以下行的注释(将开头的#删除):

    #LoadModule dav_fs_module modules/mod_dav_fs.so
    #LoadModule dav_module modules/mod_dav.so

    在LoadModule节的最后添加以下两行:
    LoadModule dav_svn_module modules/mod_dav_svn.so
    LoadModule authz_svn_module modules/mod_authz_svn.so
    在配置文件的最后添加下面这些行:

    <Location /svn>
    DAV svn
    SVNParentPath D:\SVN         
    AuthType Basic
    AuthName "Subversion repositories"
    AuthUserFile D:\passwd       
    #AuthzSVNAccessFile D:\svnaccessfile
    Require valid-user
    </Location> 
    配置表示:你所有的版本库将位于D:\SVN目录下,要访问你的版本库可以使用这样的
    URL:http://YourIP/svn/,访问权限将由passwd文件中的用户名/密码来限制。
    详细说明如下:
    ---------------------------------------------------------------------------
    <Location /svn>
    意味着可以通过像这样的URL(http://MyServer/svn)来访问Subversion版本库
    DAV svn
    告诉Apache哪个模块负责服务像那样的URL--在这里就是Subversion模块
    SVNListParentPath on
    在Subversion 1.3及更高版本中,这个指示器使得Subversion列出由SVNParentPath指定的目录下所有的版本库
    SVNParentPath D:\SVN
    告诉Subversion在目录D:\SVN下寻找版本库 #(修改成你自己的目录)
    AuthType Basic
    启用基本的验证,比如用户名/密码
    AuthName "Subversion repositories"
    当一个验证对话框弹出时,告诉用户这个验证是用来做什么的
    AuthUserFile D:\passwd          #(密码文件,不是文件夹哦)
    指定D:\passwd用为密码文件用来验证用户的用户名及密码
    AuthzSVNAccessFile D:\svnaccessfile
    指定D:\svnaccessfile来限定各个用户或组在版本库中目录的访问权限
    Require valid-user
    限定用户只有输入正确的用户名及密码后才能访问这个路径
    -----------------------------------------------------------------------------
    创建passwd文件
    打开命令行(DOS窗口CMD),
    将当前目录切换到apache2目录(通常为c:\program files\apache group\apache2\bin),
    输入命令:
    htpasswd.exe -c passwd  username 
    Automatically using MD5 format.
    New password: ******  (输入密码)
    Re-type new password: ******
    Adding password for user  username
    copy passwd d:\        (Httpd.conf 中设定的是在D:)
    重启Apache服务。
    重启后打开http://YourIP/svn/ 输入密码后,还是出错(因为还没有建立版本库)
    Forbidden
    You don't have permission to access /svn on this server.
    --------------------------------------------------------------------------------
    Apache/2.0.59 (Win32) SVN/1.4.2 DAV/2 Server at 192.168.18.8 Port 80
     (3)TortoiseSVN
     按提示安装完成,需重启电脑
     3.SVN项目设置
     (1).打开资源管理器,在D:\SVN目录下新建WWW目录
     (2).在WWW文件夹上右击TortoiseSVN--->Create repository here...
         (也可以通过命令的方式:到SVN的安装BIN目录。运行:svnadmin create D:\svn\www
         d:\svn目录需先建好,要不会出错:
       svnadmin: 档案库创建失败
       svnadmin: 无法创建最上层目录
      (3).然后选择Native filesystem(FSFS)
      (4).到项目文件夹上,右击TortoiseSVN-->import...
         在URL of repository:中输入http://YourIP/svn/www
     (5).项目成员,可在自己机上新建一个空的项目文件夹.右击SVN checkout...
        在提示的用户名和密码对话框中输入服务端配置的用户名和密码;然后点击OK;后面对话框中即会显示逐个加入的文件和目录信息,最后一条显示“Completed  At Version 1”。
       如果成功,可以在本地目录下看到相应的代码文件。选中文件或目录,可以进行“SVN Update”(从服务器更新版本)和“Svn Commit”(提交更改到服务器)操作。
    本文来源于人生译站 WoBlog [http://www.ycsznet.com/]
    详细地址为:http://www.ycsznet.com/article.asp?id=426 

  • 相关阅读:
    我受不了了,可能拿不到毕业证了
    [My B.S paper draft]我的本科答辩论文草稿
    Memory Dog for Autodesk Maya
    Silent Hill 5 Bug
    AMPAS/ASC Common File Format LUT
    CUDAAccelerated LUT Converter for DI Workflow
    Forking AfterBurn into Maya
    nicEdit上传图片无法显示的问题
    用插值的方法进行直方图平滑
    一个新的做presentation的利器
  • 原文地址:https://www.cnblogs.com/yuanermen/p/1310059.html
Copyright © 2011-2022 走看看