资深专家介绍SVN版本控制的安装使用方法
本节和大家学习一下SVN版本控制安装使用,在学习SVN的过程中这是必须要掌握的内容,希望通过本节的学习大家对SVN版本控制安装使用有一定的认识。首先看一下SVN的概念。
SVN全名Subversion,即版本控制系统。SVN与CVS一样,是一个跨平台的软件,支持大多数常见的操作系统。作为一个开源的版本控制系统,Subversion管理着随时间改变的数据。这些数据放置在一个中央资料档案库(repository)中。这个档案库很像一个普通的文件服务器,不过它会记住每一次文件的变动。这样你就可以把档案恢复到旧的版本,或是浏览文件的变动历史。Subversion是一个通用的系统,可用来管理任何类型的文件,其中包括了程序源码。
SVN版本控制安装使用指南
SVN的主要特征有:
·CVS大部分的功能。
·支持“目录”级别的版本管理,并且解决了CVS中迟迟未能解决的文件重命名和移动等问题。甚至对文件或文件夹的属性都提供了版本管理。
·“提交(commit)”实现了真正意义上的原子操作。也就是类似数据库中的事务的功能。
·版本号依据每次提交而改变,不再针对每个文件。日志信息也是针对每次提交而设置。所以看到版本号是几百或者几千也不用太惊讶,表示方式不一样罢了。
·通过WebDAV/DeltaV协议,可以与Apache的网络服务无缝衔接(通过Apache来运行)。这样就能提供一些额外的功能,例如:认证,压缩传输,以及数据仓库(Repository,见下)的浏览等。
·也可以作为独立服务器运行,但这样的话提供的功能较为简单薄弱。
·两种运行模式都支持SSH(当然需要各自的支持和配置)
·降低了分支(Branch)和标签(tag)上的时间消耗。底层设计理念和实现上的不同,不细说了。
·时间消耗依据的是文件改变部分的大小,而不是数据总量。
·创建数据仓库时,用户可以指定是使用内嵌的BerkeleyDB数据库,还是特定格式的文件系统。
其他还有些零星的小功能,具体可以参阅:http://SVN.tigris.org/roadmap.html
这里解释一下数据仓库的概念:
一个数据仓库对应的可以是一个项目,也可以是多个项目。SVN是基于数据仓库进行管理的。
按照用户习惯,可以只在每个数据仓库内仅放置一个项目的内容。
※SVN版本控制下载※
SVN1.2.3:
http://SVN.tigris.org/project_packages.html
(SVN的Server端,分不同操作系统的版本,这里我下载的是forwindows及forlinux的)
TortoiseSVN:
http://tortoisesvn.tigris.org/download.html
(windows下的SVN客户端,以shell方式集成在系统右键菜单中)
Apache2.0.55:
http://httpd.apache.org/download.cgi
(视操作系统而下)
※SVN版本控制安装使用※
下面说一下SVN版本控制的安装,分两种平台(windows,linux)及两种模式(与Apache绑定vs.Stand-alone)
具体在Apache上的配置倒是大同小异。
另外,SVN是支持SSL的,但是这个配置牵涉到其他太多东西,本文就不过多涉及了。真的有需要可以参考SVN的手册(英文)。
方便起见,用几个变量代表具体的值,请自行加以调整:
%SystemRoot%—windows的系统所在目录,一般类似这样:C:"WINNT
%SVN_HOME%—SVN的安装目录
%SVN_REPO_PARENT%—SVN所有数据仓库的根目录(就是存放全部版本文件的总目录)
%PROJECT_NAME%—项目名,严格的来说它对应的是一个数据仓库,但是这里遵从用户习惯,以项目名称方式来命名。
%SERVER_NAME_OR_IP%—服务器名或IP地址
%APACHE_HOME%—Apache2的安装路径
另外,安装过程默认使用文件系统做后台数据库,文中不再加以说明。如需使用BerkeleyDB,请自行参考SVN文档。
Windows上的服务器端安装
____________________________________________
1.双击下载得来的”svn-1.2.3-setup.exe”并安装到”%SVN_HOME%”
2.安装完毕后,”%SVN_HOME%"bin”应该已经自动加入到系统路径(%PATH%)中。如果没有,请手工添加。
3.用命令行来测试安装结果是否正确:
1.cmd
2.svnadmin
如果返回这样的错误信息:”svnadmin.exe-UnableToLocateDLL”,那就需要尝试一下步骤的中的一种或几种:
安装VC++6.0(主要是安装VC的运行库)
或者直接从别的机器上拷贝一个”msvcp60.dll”文件到本机的”%SystemRoot%"system32″下
4.使用以下命令创建一个数据仓库,用来存放项目的源代码和其他文件:
1.cmd