原文地址:http://developer.51cto.com/art/201005/199628.htm
本文介绍Subversion安装配置快速指南,首先讲Subversion的安装和配置,Unix/Linux下一般已安装或者使用软件包管理机制安装,非常方便,而配置过程基本是一样的,在这里我 们只讲Windows平台下的安装。
一、首先下载所需的软件:
Subversion: http://subversion.tigris.org/
Windows下的客户端TortoiseSVN: http://tortoisesvn.tigris.org/
二、安装软件
Subversion安装配置时直接双击运行安装,先装Subversion官方文件,安装完成后会自动添加%Subversion%\bin到Path环境变量中。也就是说你现在已经可以在命令行中使用Subversion了。进入CMD,输入svn --version,看一下运行效果。
接着安装TortoiseSVN客户端,这是一个非常方便,易于使用的客户端。一路Next下去安装完成,然后会问你是否重启,重启是为了让TortoiseSVN的工作目录样式生效,选择重启就可以了。
三、创建Repository
创建Repository,也就是版本库,我选择的路径是E:\svnRoot,命令行:svnadmin create E:\svnRoot
这样就在E:\svnRoot创建了版本库,SVN在该目录下创建了许多文件,我们最好不要手动编辑或里面的数据文件,当然conf目录下的配置文件除外。关于版本库以及我们的项目组织,后面我还会讲到。
四、选择Subversion的网络协议
在Subversion安装配置中Subversion服务器支持多种网络协议。最直接的file:///可以在本机以及网络驱动器 上使用,然后还提供了svn, svn + ssh以及http访问方式。到底选择哪一个要根据情况进行选择,功能越强大的协议,你需要付出的管理也越多。所以对于我们来说,Subversion自 已的svn协议就够了。当然,你可以在任何时候改变Subversion服务器使用的协议,甚至你可以同时使用不同的协议。
五、配置用户和权限
Subversion使用文件来配置用户以及权限,在E:/svnRoot/conf/目录下打开svnserve.conf和passwd文件svnserve.conf,删除下面行前面的#号注释:
[general]
anon-access = read
auth-access = write
password-db = passwd
passwd中配置用户和密码
[users]
jkzqw = 123456
含义是:
未验证用户无任何权限(如果把none修改为read就是给予读权限)
已验证用户给予写权限(当然也能读)
密码数据存放到passwd文件中
【注意】anon-access=none这条必须显示写出来,否则会有一个默认权限,别人可能不用登陆就能看到你的项目!
然后打开同目录的passwd文件来设置帐户:
同样,设置[users]小节中行前没有#号的内容,例如:
admin=zhang
含义是:
用户admin的密码为zhang
该目录下还有一个authz的文件,用来针对不同的目录给用户分配不同的权限。
六、启动Subversion服务器
我们选择的是svn访问协议,使用下面命令即可启动SVN服务器
svnserver -d -r E:\svnRoot
七、初始导入项目
假设我们有一个HelloWorld项目,在E:\work\HelloWorld目录下,在CMD中进入到E:\work\HelloWorld,输入下面命令导入项目到版本库中:
E:\work\HelloWorld > svn import -m "initial import project HelloWorld" ,svn://localhost/HelloWorld/trunk,svn会首先尝试使用系统用户名,如果你配置的用户名不一样,就直接忽略回车,然后输入你的用户名和密码
注意这里我们把HelloWorld目录下的所以文件以及子目录(不包括HelloWorld目录本身)导入到 svn://localhost /HelloWorld/trunk路径下,这里我们遵循的是Subversion推荐的项目路径,trunk作为项目开发的主线,以后会相继创建 branches和tags作为分支和标签记录。现在你可以删除HelloWorld目录了,因为SVN已经给我们保存了项目。
八、使用Subversion管理项目
项目导入以后,我们的开发步骤就变成了:首先签出项目,对项目进行修改,(运行测试通过),最后提交修改。
首先checkout项目E:\work > svn checkout svn://localhost/HelloWorld/trunk HelloWorld
这样就把项目所有文件都签出到了HelloWorld目录下,接下来你就需要对项目进行开发修改
最后提交修改
E:\work\HelloWorld > svn commit -m "fix bug 3012"
这样你的修改就提交到了版本库中,SVN对自动对修订版本号进行修改。注意如果你在项目中新增或者删除了文件或目录,则需要相应使用svn add或者svn delete命令进行操作,最后再使用svn commit一次提交上去
九、配置svnserver作为系统服务
你可能想将svnserver配置为系统服务,以便开机便可以自动启动svnserver服务,不用每次都这么麻烦手动启动。最新的Subversion可以使用简单的命令来创建Windows服务了,CMD输入下面命令:
sc create svnserve binpath= "E:\Subversion\bin\svnserve.exe --service -r E:\svnRoot" start= auto displayname= "Subversion Server" depend= Tcpip
注意上面命令需要一次输入,中间不要回车,而且" = "号后面必须有一个空格,另外请根据你自己的安装路径以及版本库修改命令。直接使用svn命令操作Subversion很麻烦,所以就有了易于使用TortoiseSVN客户端,在Windows下使用相当方便,只需要鼠标点击几下就可以完成很多操作,到这里Subversion安装配置基本完成。