如何快速建立Subversion服务器,并且在项目中使用起来,这是大家最关心的问题,与CVS相比,Subversion有更多的选择,也更加的容易,几个命令就可以建立一套服务器环境,可以使用起来,这里配套有教程。51Testing软件测试网y
{*z1i5aBB-tU
{v'Y%f'G0
本文是使用Subversion最快速的教程,在最短的时间里帮助您建立起一套可用的服务器环境,只需略加调整就可以应用到实际项目当中。51Testing软件测试网+?!W7ab_Enpz,C51Testing软件测试网1GSr'J0w
@0g
本教程分为以下几个部门,不仅仅是快速入门,最后我们还有一些高级功能的说明,为了说明简单,教程是在windows下使用的方式,以方便资源有限的项目使用,对于UNIX环境下,区别并不大。51Testing软件测试网5\Mq W"d7g
51Testing软件测试网1@Q;smU+W- 软件下载
- 服务器和客户端安装
- 建立版本库(Repository)
- 配置用户和权限
- 运行独立服务器
- 初始化导入
- 基本客户端操作
1,软件下载
~*Qt4A{-_/_L[0 到官方网站的下载二进制安装文件,来到二进制包下载部分,找到Windows NT, 2000, XP and 2003部分,然后选择"the same directory",这样我们可以看到许多下载的内容,目前可以下载svn-1.3.0-setup.exe。
n/Yi]W*Q)P$X0- 下载Subversion的Windows客户端TortoiseSVN。
TortoiseSVN是扩展Windows Shell的一套工具,可以看作Windows资源管理器的插件,安装之后Windows就可以识别Subversion的工作目录。51Testing软件测试网w'n~6k2g4_
Z:{@
I/z0ec0?+M_0
官方网站是TortoiseSVN,下载方式和前面的svn服务器类似,在Download页面的我们选择Official version for Win2k/XP or higher的版本,然后在sourceforge的下载页面选择目前的最高稳定版本的安装文件TortoiseSVN-1.3.2.5840-svn-1.3.0.msi,还可以sourceforge的语言下载页面中,下载简体中文语言包。
8bqyM2\3h051Testing软件测试网0Y:E;_-[T'O)B"K#b
U:D0NfL/Us&L02,服务器和客户端安装51Testing软件测试网x/_9Le#D+~T
51Testing软件测试网)M$K(V1c)`z(Y{3,建立版本库(Repository)
M2x`Q
j0
qF)h[ o&OvqkL0 运行Subversion服务器需要首先要建立一个版本库(Repository),可以看作服务器上存放数据的数据库,在安装了Subversion服务器之后,可以直接运行,如:
z;k9e F8@7P,y0svnadmin create E:\svndemo\repository
+C |0Edp&F:U@0就会在目录E:\svndemo\repository下创建一个版本库。51Testing软件测试网4D3xt p [0D-Kw
我们也可以使用TortoiseSVN图形化的完成这一步:51Testing软件测试网
j4U4q'k \Q2?
在目录E:\svndemo\repository下"右键->TortoiseSVN->Create Repository here...“, 然后可以选择版本库模式, 这里使用默认即可, 然后就创建了一系列目录和文件。51Testing软件测试网re,L9A1kL
-j(B6u2yn/mi*F04,配置用户和权限51Testing软件测试网g&UJ0o}
51Testing软件测试网 j#lD`/T7g7O5|B:Y
来到E:\svndemo\repository\conf目录,修改svnserve.conf:
.g)n'Vc I,t ^)D;s0# [general]51Testing软件测试网8T9a| e2R6E&K9o P o
# password-db = passwd
7A9_
E*Bg*Uz5Z*ya|0改为:51Testing软件测试网([
r q?(S$y|
[general]
:h3N,T+bb_0password-db = passwd
v;TVw\h{0R6ud#k*]0然后修改同目录的passwd文件,去掉下面三行的注释:51Testing软件测试网yMp
F$`4q
oa0w%b
# [users]
+|l
_Fz*Ei0# harry = harryssecret
?"sS9iT0# sally = sallyssecret51Testing软件测试网[3`E&rBr|"t
最后变成:51Testing软件测试网TBt9LG]3~8T/|w5W3t
[users]51Testing软件测试网4aGx+C7De!x:|h#F9b
harry = harryssecret
/Sobi@Va.p
X0sally = sallyssecret
agT%Jk
A0疑问: 用户是直接在这里建成吗?51Testing软件测试网:e)K2\OrIZ
疑问2:为什么我机上并没有passwd文件?
'jl a4fi0u051Testing软件测试网%? BFW&c)Uq
r
5,运行独立服务器51Testing软件测试网)\7Q)i5l3D\2k%t,m
51Testing软件测试网@|1U/CML
在任意目录下运行:
'c9sO TwO0svnserve -d -r E:\svndemo\repository
l~-w;Q%Pp:^c0我们的服务器程序就已经启动了。
R%N#IZ"U0
jC5x;N9@@K0疑问:独立的服务器名称是什么,我都没有使用,直接在客户端创建一个库,直接操作,都行得通,默认的用户是操作系统用户。
AA%X'|&h0
xF&N` A
N b"g:J06,初始化导入51Testing软件测试网T9x
h9D;}7E0K
Y~/JX g*["d0来到我们想要导入的项目根目录,在这个例子里是E:\svndemo\initproject,目录下有一个readme.txt文件:51Testing软件测试网.J#r\/K?m
- 右键->TortoiseSVN->Import...
- URL of repository输入“svn://localhost/trunk”
- ok
完成之后目录没有任何变化,如果没有报错,数据就已经全部导入到了我们刚才定义的版本库中。51Testing软件测试网J;o$C'y1gSMa
51Testing软件测试网'y8}'Hj;`y
51Testing软件测试网o5~eQ+^(\2v _
7,基本客户端操作51Testing软件测试网?v
a"?'Eb
51Testing软件测试网b0OY9r)p%T f$}7e8@
取出版本库到一个工作拷贝:51Testing软件测试网9l!X8q
Nc/Xk
来到任意空目录下,在本例中是E:\svndemo\wc1,运行右键->Checkout,在URL of repository中输入svn://localhost/trunk,这样我们就得到了一份工作拷贝。
u6vOp%?0?X0在工作拷贝中作出修改并提交:
:v1ahoM2w1Lv0打开readme.txt,作出修改,然后右键->Commit...,这样我们就把修改提交到了版本库,我们可以运行。
f6Rxr7L\0察看所作的修改:
`_&?a.CB2|3K+O0readme.txt上右键->TortoiseSVN->Show Log,这样我们就可以看到我们对这个文件所有的提交。在版本1上右键->Compare with working copy,我们可以比较工作拷贝的文件和版本1的区别。
_h.I.Gy6mDb0 51Testing软件测试网:SA.z#p3G7u2mGl
51Testing软件测试网 Ixl |3G3`Bv;}
Ly
PS:2008年就要过去了,我很怀念,迎接美好的2009~~~加油!!!
ZxZ#^#C9L5z6v0
!~3x}\I%X:_0PPu0 51Testing软件测试网7v'b:^4Zn(NX'X+I
51Testing软件测试网yt%etJ]P
"Fs[#P
`dt0 51Testing软件测试网i6^gp{7t6XJ