2008年10月12日

SVN服务器初步架设步骤(For new guys only)

客户端:TortoiseSVN

服务端:svn-win32-1.5.0(http://svn.collab.net

第一次使用的人只需要建立最简单的功能,能够新建一个项目,能够check in和check out,知道服务端的几个配置文件的功能和位置以及设置方式,that would be a good start,let's go:

1. 下载工具软件。客户端的TortoiseSVN和服务端的svn-win32-1.5.0

2. 安装软件。客户端TortoiseSVN就傻瓜安装即可,无特殊设置;服务器端svn-win32-1.5.0不需要安装,下载后解包即可,执行程序位于bin目录下,我们可以建立一个批处理文件启动服务器,内容如下:

D:\svn-win32-1.5.0\bin\svnserve.exe -d -r c:\svnroot

上面的命令就是启动svn服务器,设置项目所在根目录为c:\svnroot

3. 新建一个项目。这涉及到服务器端和客户端两边的操作,分开说:

3.1 服务器端:

在c:\svnroot目录下新建一个目录用于存放项目,我们的为test_project,然后在新建的文件夹上右键->TortoiseSVN->create repository here,这会在该路径下建立新项目的文件结构和索引,包括conf、db、hooks、locks目录和两个文件format、readme.txt,其中conf目录下包含该项目的3配置文件:

authz:用户/组权限设置文件

passwd:用户密码设置文件,里面是以用户名、密码明码设置的

svnserve.conf:服务访问设置文件(仅用于该项目,此设置为每个项目独立的)

第一次学习使用无需设置authz和passwd(因为我们允许匿名访问,哈哈),修改svnserve.conf中的下面这行内容:

# anon-access = read

改为允许匿名访问:

anon-access = write

3.2 添加初始版本代码到新建的项目

服务端的架子已经搭好,但还没内容,开发人员工作的开始需要从服务器check out出来源代码的初始版本,这就是这步工作的内容。

从网络中任何一台机器(安装了客户端TortoiseSVN)开始导入源代码,架设源代码目录为our_source,在该目录上右键->TortoiseSVN->Import,URL of repository输入:svn://127.0.0.1/test_project(127.0.0.1表示其实我们是在本机测试,test_project为我们上一步在服务器根目录下建立的项目文件夹),然后确定,our_source目录下的所有文件都会被导入SVN服务器的test_project项目下,开发人员可以开始工作了。。。

3.3 从服务器上checkout出代码

现在可以从SVN服务器上check out出代码了。

首先新建一个目录用于存放自己的代码分支,我们新建一个目录branch1,然后在该目录上右键->SVN Checkout

现在我们的开发人员可以开始在所提供的源代码上开始工作了。

3.4 修改好后checkin代码

内容修改后你的目录会出现一个红色感叹号,你需要将你的修改提交给服务器,同样在该目录上选择右键->SVN commit,that's all

按照上面的步骤,你已经建立了一个最简单的SVN服务器,新建了一个项目,导入了一些内容,并且能够checkin和checkout,但这还不能真正开始工作,因为没有权限管理,任何人都可以访问你的SVN服务器,而且都还有写权限。要建立一个可以用于工作的SVN服务器,你还要修改服务器端项目文件夹下conf目录里的文件,关闭匿名访问,建立用户和组并设置权限。

PS:passwd文件设置用户帐号密码,authz文件设置用户组权限,svnserve.conf设置服务器行为,规则都很简单,具体可看例子或者随软件附带的帮助文件。authz文件中设置目录权限的格式为:

[enhance_project:/]
@enhance_project = rw
jz = rw

没有评论: