版本控制工具SVN最新版1.6.6出炉,同时包含Apache服务2.213

开发 项目管理
随着SVN的快速发展,版本更新越来越快,目前最新版本是SVN1.6.6,它有什么特殊的新功能呢,它和其他版本区别是什么,相信本文会给你一个满意的答案。

本节向大家简单介绍一下版本控制工具SVN:Subversion的相关内容,在学习SVN的过程中,它可以在多个操作系统中搭建,版本更新也越来越快。目前版本控制工具SVN最新版本是1.6.6,包含了Apache服务2.213,安装的时候默认一同安装,客户端使用TortoiseSVN-1.6.6。
软件在网上都可以免费下载,作为新手这里介绍一下我的版本控制工具SVN配置过程。

1、基本配置
1)、安装完成在浏览器输入http://localhost打开的网页显示“Itworks”表示Apache与SVN整合完成;
2)、发现安装完成之后无需重启电脑即可启动Apache服务;
3)、修改配置文件,即安装路径conf目录下的httpd.conf文件,发现mod_dav.so已经默认注册,只需打开mod_dav_fs.so前面的注释标记即可(大概在文件的85行左右);
4)、在指定版本库根目录下创建一个库,比如repo1;
5)、打开浏览器,输入地址:http://localhost/svn/repo1,这时应该能看到“repo1-Revision0:/”。

2、配置权限
版本控制工具SVN中配置权限问题。权限配置这里分为两种,一种是用户认证,一种是访问权限。在安装路径下的conf目录下的httpd.conf文件中注册Subversion浏览库和权限控制modules:
LoadModuledav_svn_modules/mod_dav_svn.so
LoadModuleauthz_svn_modules/mod_authz_svn.so
注意:mod_dav_fs.so和mod_dav.so必须被打开(前面基本配置的时候已经打开),且必须在mod_dav_svn.so和mod_authz_svn.so之前(可以将这两项放在所有dav之后)。
在进行权限配置之前,配置文件的最后一段如下所示:

DAVsvn
SVNParentPathd:\svn_repository

1)、版本控制工具SVN身份认证配置
在配置文件最后的location段加入:AuthUserFile(path)/passwd
passwd文件中包含对访问版本库的用户的管理,即所有用户及其密码。该文件就是一个文本格式的文件,可以任意编辑。如果密码未加密则内容如下所示
coyoo:123
tom:456
表示该文件中管理了两个用户coyoo和tom,他们的访问密码分别是123和456。如果要为用户创建不透明的密码,可以使用Apache的htpass命令,操作如下
打开命令行(DOS窗口CMD),将当前目录切换到apache2目录(通常为安装路径\httpd\bin),
输入命令:htpasswd.exe-cpasswdcoyoo
回车后在命令行提示以下内容,需要你两次输入为该用户创建的密码
AutomaticallyusingMD5format.
Newpassword:******(输入密码)
Re-typenewpassword:******
Addingpasswordforusercoyoo
这样就创建了一个passwd文件,并且有一个用户,即coyoo,他的密码已被加密。这里要注意的是在开始创建passwd文件的时候如果事先文件不存在需要使用“-c”参数,即表示初次创建密码文件;之后如果要添加其他用户则执行相同命令但不能再带此参数,否则即新建密码文件,密码加密以后如下所示:
coyoo:$apr1$enD0V98v$5hW6vOa9RnTfYIFnFXxIK.将密码文件放在版本库根目录下即可。
2)、版本控制工具SVN访问权限配置
同样在配置文件最后的location段加入:AuthzSVNAccessFile(path)/authz
文件authz跟passwd一样属于文本文件,可以任意编辑,该文件一般包括两部分内容:
一部分是以[groups]定义开始的用户组,比如
[groups]
dev1=coyoo
dev2=tom,jacky
上面定义了两组用户即dev1和dev2。
另外一部分内容是对各个路径分配给用户以不同的访问权限,比如:
[\]
*=r
[\svn\svn_repository\prj1]
@dev1=rw
@dev2=r
[\svn\svn_repository\prj2]
@dev1=rw
tom=rw
jacky=r
以上对3个路径进行了访问权限配置,跟路径所有用户有读的权限,prj1对于dev1用户组有读写权限,而对用户组dev2只有读权限,prj2对于用户组dev1有读写权限,而对于用户tom有读写权限,jacky只有读的权限。注意关键字“@”代表组。
经过权限配置后,配置文件最后一段location就如下所示:#配置虚拟目录,表示访问配置库的url为:http://xxx.xxx.xxx/SVN
 

  1. <Location/svn> 
  2. #引用远程访问模块,告诉Apache哪个模块负责服务像那样的URL  
  3. DAVsvn  
  4. #配置版本库路径  
  5. SVNParentPathd:\svn_repository  
  6.  
  7. #验证方式,启用基本的验证,用户名/密码验证  
  8. AuthTypeBasic  
  9. #项目的名称,当一个验证对话框弹出时,告诉用户这个验证是用来做什么的  
  10. AuthName"SubversionRepository"  
  11. #用户身份认证文件  
  12. AuthUserFile"d:\svn_repository\passwd"  
  13. #授权文件,指定authz来限定各个用户或组在版本库中目录的访问权限  
  14. AuthzSVNAccessFile"d:\svn_repository\authz.txt"  
  15. #只允许https方式访问  
  16. #SSLRequireSSL  
  17.  
  18. #所有用户都需要身份验证,禁止匿名访问  
  19. Requirevalid-user  
  20. #允许匿名访问  
  21. #SatisfyAny  
  22. #为了让页面好看,Subersion自带或者用户自制的XSLT样式表  
  23. SVNIndexXSLT"\svnindex.xsl"  
  24. #允许访问/svn目录  
  25. #SVNListParentPathon  
  26. Location> 
  27.  

 本节关于版本控制工具SVN的介绍完毕,请关注本节其他相关报道。
 

【编辑推荐】

  1. 版本控制工具SVN与Apache完美组合
  2. 版本控制SVN使用方法详解
  3. 学习笔记 Windows下客户端如何修改SVN密码
  4. TortoiseSVN中文版安装指南
  5. 术语汇编 SVN代码库简介

 

 

责任编辑:佚名
相关推荐

2010-05-24 19:09:01

SubVersion最

2010-05-31 12:27:54

版本控制工具SVN

2010-05-21 15:46:41

Google Code

2009-12-31 11:09:36

Ubuntu wine

2012-02-20 23:09:01

Windows 8

2012-10-16 09:46:23

OpenStackFolsomSwift

2009-12-16 08:49:12

2013-02-28 11:28:30

2014-06-06 16:57:30

网络人

2010-06-02 15:51:01

SVN版本控制

2011-09-27 13:02:17

Ubuntu 11.1LibreOffice

2010-06-22 11:36:20

VMwareVMware Fusi

2012-11-12 10:10:37

FolsomOpenStack

2012-06-04 11:01:44

Windows 8版本

2022-06-08 14:32:52

NVIDIA

2012-09-28 14:17:36

OpenStack虚拟网络

2013-05-20 14:54:44

Android开发最新版本ADT使用

2013-08-02 10:13:42

Windows 8.1

2010-06-08 10:15:45

opensuse 11

2018-12-16 16:57:16

密码弱密码密码泄露
点赞
收藏

51CTO技术栈公众号