zoukankan      html  css  js  c++  java
  • 基于Windows的SVN安装与配置

    1 什么是SVN?

    SVN全称为Subversion, 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据。 这些数据放置在一个中央资料档案库 (repository) 中。 这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。 这样你就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。 许多人会把版本控制系統想像成某种 “时光机器”。

    某些版本控制系統也是 SCM(software configuration management) 系统。 这些系統是特別设计来管理大量代码的, 而且具有许多专门针对软件开发的功能,像通俗易懂的程序语言, 或是提供编译软件的工作。 不过Subversion 并不是这样的系统; 它是一个通用的系统, 可用来管理任何类型的文件, 其中包括了程序源码。

    版本控制是管理数据变更的一种技术。对于开发人员来说,它已经成为不可或缺的工具,因为他们经常修改软件代码,产生部分的变更,然后第二天再取消所有的变更。想象有一群程序员同时工作的情况你就能理解,为什么需要一个良好的系统来管理可能出现的混乱。

    2 SVN服务器端安装与配置

    2.1安装Apache

    本安装基于windows操作平台,因为要搭建此项目管理服务器,所以必须要先安装Apache服务器。

    (1)下载Apache

    注意:Apache低于2.0.54的Windows版本的存在编译问题,不能与Subversion 1.2一起工作。2.2.X目前不能很好支持SVN 1.4.3。所以当前建议下载Apache 2.0.63版本。其他版本请在此http://httpd.apache.org/download.cgi下载。

    (2)安装

    下载完成后运行apache_2.0.63-win32-x86-no_ssl.msi。设置系统信息,在Network Domain下填入您的域名(比如:workyee.com),在Server Name下填入您的服务器名称(比如:http://www.workyee.com/,也就是主机名加上域名),在Administrator's Email Address下填入系统管理员的联系电子邮件地址(比如:t.a.i@163.com),如果你的服务器是本地或者没有DNS名称,请直接输入IP地址。上述三条信息仅供参考,其中联系电子邮件地址会在当系统故障时提供给访问者(此三条信息也可在安装后进行修改,该文件位于Apache Group/Apache2/conf/httpd.conf文件)。下面有两个选择,图片上选择的是为系统所有用户安装,使用默认的80端口,并作为系统服务自动启动;另外一个是仅为当前用户安装,使用端口8080,手动启动(如发生安装失败情况可以打开Apache Group\Apache2\conf\httpd.conf,编辑文件的Listen 80为其他可用的端口,然后用CMD进入命令行模式进入你安装apache的目录/apache2/bin输入apache -k installapache -k start)。一般选择如下图所示。按“Next”继续。

    基于Windows的SVN安装与配置 - t.a.i - 南天梦星

     安装完成后浏览 http://localhost/ 若成功,可看到如下图apache欢迎页面。

    基于Windows的SVN安装与配置 - t.a.i - 南天梦星

    2.2 安装SVN

    (1)下载SVN

    在本实例中,选择下载svn-win32-1.5.4.zip此版本,其他版本可以在此下载http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91

    (2)安装

    将svn-win32-1.5.4.zip压缩包解压,从svn-win32-1.5.4\bin 中将mod_authz_svn.so mod_dav_svn.so复制到Apache Group\Apache2\modules下,再将svn-win32-1.5.4\bin目录下的所有dll文件全部复制到Apache Group\Apache2\bin文件夹下。

    修改Apache Group\Apache2\conf\httpd.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

    重启apache看到下图状态栏显示Apache/2.0.63(Win32) SVN/1.5.4 DAV/2即表示安装成功。

    基于Windows的SVN安装与配置 - t.a.i - 南天梦星

    2.3 配置SVN

    (1)建立版本库

    首先建立一个用于存在SVN项目的版本库,本例中在D盘驱动器中建立目录SvnTrac/svn,可通过如下命令建立版本库,当然如果你需要建立多个版本库只需将名称进行换名即可。

    首先以cmd命令窗口进入svn-win32-1.5.4\bin目录结构下,输入:

    >svnadmin create --fs-type fsfs D:/SvnTrac/svn/projects回车,等待提示创建完成;完成后则进行相关密码以及权限设置。

    (2)设置密码文件

    以cmd命令窗口进入路径Apache Group\Apache2\ bin目录下,然后输入:

    > htpasswd -c D:/SvnTrac/svn/projects/conf/<filename> <username>

    本例中filename名称使用pw,username名称使用admin(注意filename无需后缀名),这样便可在SvnTrac/svn/projects/conf目录下创建一个用户名为admin的pw文件,此文件将在后面配置权限所用。

    部分添加用户操作,可使用如下命令:

    添加用户:>htpasswd -d filename <username>

    添加用户不带MD5加密用户:>htpasswd -p filename <username>(windows平台下默认是MD5加密)

    删除用户:>htpasswd -D filename <username>

    (3)设置权限文件

    用文本编辑器或在CMD下在SvnTrac/svn/projects/conf路径下生成名为access的文件,此名称将在Apache Group\Apache2\conf\httpd.conf配置文件中所用,此处不使用扩展名。

    编辑一下内容:

    [groups]
    administrator = admin
    user = allen
    [/]
    * = r
    @user = r
    @administrator = rw
    [projects:/]
    @user = rw

    内容含义为根目录下任何人有读权限,administrator组默认有读写权限;user组对projects也有读写的权限。admin和allen为对应组员,增加组员用","搁分。备注: 如果有中文路径,那要把文件存成UTF8格式,不建议使用中文路径,这在编程当中是严格禁止的。

    (4)配置Apache

    <Location /svn>
    DAV svn
    SVNPath "D:/svntrac/svn/projects"
    AuthType Basic
    AuthName "Subversion repositories"
    AuthUserFile "D:/svntrac/svn/projects/conf/pw"
    AuthzSVNAccessFile "D:/svntrac/svn/projects/conf/access"
    Require valid-user
    SVNAutoversioning on
    ModMimeUsePathInfo on
    </Location>

    备注: 如果使用<Location /svn/>可列出D:/svntrac/svn/projects 下的版本库,若为<Location /svn>则不能访问http://127.0.0.1/svn下的项目,而只能这样访问,如http://127.0.0.1/svn/<projectname>。注意配置信息时不要出现不必要的空格,以免apache启动出错。

    配置内容说明 

     设置

     解释

     <Location>  意思是Subversion版本库的URL是http://ipaddress/svn/
     DAV svn  告诉Apache是哪个模块响应那个URL的请求-此刻是Subversion模块
     SVNPath  告诉Subversion需要查看的版本库位于D:/var/svnhome/projects之下
     AuthType Basic  激活基本认证,就是用户名/密码
     AuthName  用来说明弹出要求输入认证信息的对话框信息,可以使用中文.
     AuthUserFile  指定使用认证密码的文件
     AuthzSVNAccessFile  位置Subversion版本库的访问控制权限的路径文件
     Require valid-user  指定只有输入了正确的用户/密码的用户可以访问URL

    重启apache并访问http://127.0.0.1/svn,如出现下图即表示SVN安装配置成功。

    基于Windows的SVN安装与配置 - t.a.i - 南天梦星

    3 SVN客户端TortoiseSVN安装

    TortoiseSVN是客户端软件,主要可以用于从服务器上check版本库项目以及updata与commit等相关SVN的管理操作。本实例中使用了TortoiseSVN-1.5.5.14361-win32-svn-1.5.4.msi版本,另有与其相对应的中文汉化包LanguagePack_1.5.5.14361-win32-zh_CN.msi。其他版本可在http://tortoisesvn.net/downloads subversion官方网站下载。TortoiseSVN具体使用操作将在接下来的博文做介绍。

  • 相关阅读:
    【译】NodeJS and Good Practices
    【译】单一责任原则
    CSS 属性 z-index
    Node 连接 MySql
    CentOS 7 后台克隆远程库
    H5log打印
    利用Promise实现Promise.all
    Set、Map、WeakSet、WeakMap 理解与使用
    vue如何禁止弹窗后面的滚动条滚动?
    vue面试题总结
  • 原文地址:https://www.cnblogs.com/zjoch/p/1363596.html
Copyright © 2011-2022 走看看