CMStruggling 2008-6-18 20:04
Windows下Subversion的安装使用(快速搞定服务器端配置)
近来发现很多朋友对于Windows下的Subversion服务器端的配置还不熟悉;
越是自己整理了一份文档(比较基础);
希望对有这方面需求的朋友有所帮助。
ok;
闲话少叙;
言归正传。
[b][color=Red][size=5]1. 软件下载[/size][/color][/b]
1.1 下载Subversion安装软件
到Subversion官方网站:
[url]http://subversion.tigris.org/servlets/ProjectDocumentList?expandFolder=254&folderID=91[/url] 下载
svn-win32-1.4.6.zip(目前最新版本;是一个压缩包形式;而且for Apache2.0.x)
1.2 下载TortoiseSVN安装软件(Subversion的Windows客户端程序)
到TortoiseSVN官方网站:
[url]http://tortoisesvn.net/downloads[/url] 下载
TortoiseSVN-1.4.8.12137-win32-svn-1.4.6.msi(最新版本)
1.3 下载Apache安装软件
到Apache官方网站:
[url]http://httpd.apache.org/download.cgi[/url] 下载
apache_2.2.9-win32-x86-openssl-0.9.8h-r2.msi(最新版本)
[b][color=Red][size=5]2. 基于独立服务器 SVNServer的配置(参考网上的一些资料)[/size][/color][/b]
2.1 安装Subversion和ToitoiseSVN
2.1.1 直接把前面下载的Subversion解压缩就好了,比如我这里解压缩到: C:\Program Files\Subversion
2.1.2 安装TortoiseSVN时按照提示安装就好了,安装完成后会提示重启。
2.2 建版本库(Repository)
2.2.1 首先把E:\TEST_SVN作为所有版本库的根目录,用命令行创建(可以首先将Subversion的bin目录添加环境变量Path,方便以后;这个很简单,这里不详述了),如下图,运行命令: [color=Blue]svnadmin create E:\TEST_SVN\test_one[/color]
则可在E:\TEST_SVN下建立一个版本库test_one;
[attach]9394[/attach]
2.2.2 用TortoiseSVN创建:先在E:\TEST_SVN下新建文件夹test_one,在test_one目录下“右键→TortoiseSVN→Create Repository here...”,然后选择版本库模式(这里使用默认的FSFS即可),即创建成功。
2.3 配置用户和权限
在E:\TEST_SVN\test_one\conf目录下,
2.3.1 修改svnserve.conf文件:
修改:
# password-db = passwd
改为:
password-db = passwd
2.3.2 然后修改同目录的passwd文件:
修改:
# harry = harryssecret
# sally = sallyssecret
改为:
harry = harryssecret
sally = sallyssecret
(即是去掉前面的#和空格,去掉注释)
2.4 运行独立服务器
运行命令: [color=Blue]svnserve –d –r E:\TEST_SVN\test_one[/color]
如图:
[attach]9395[/attach]
命令窗口不要关闭,关闭窗口会把服务停止。
2.5 初始化导入
比如在E盘下有个文件夹MemberShip(里面放的是MemberShip.doc),将其导入到版本库中,选中此文件夹“右键→TortoiseSVN→Import...”,输入地址;
如图:
[attach]9396[/attach]
输入“初始化导入”作为注释;
点OK后会提示输入用户名密码,输入前面设置的用户:harry/harryssecret或sally/sallyssecret;完成后此文件夹MemberShip的全部内容都已导入到版本库test_one里;如图:
[attach]9397[/attach]
此时可在客户端工具TortoiseSVN里浏览操作,如图:
[attach]9398[/attach]
2.6 基本客户端操作(这里只是一些最基本的操作)
2.6.1 check out
取出版本库到一个工作拷贝:来到任意空目录下,比如我这里: E:\TEST_SVNdemo;选中此文件夹“右键→SVN Checkout”,输入URL,这样我们就得到了一份MemberShip 中内容的工作拷贝。
如图:
[attach]9399[/attach]
成功:
[attach]9400[/attach]
2.6.2 commit
在工作拷贝中作出修改并提交:
在TEST_SVNdemo工作拷贝中打开文件MemberShip.doc,作出修改,然后“右键→SVN Commit...”,这样我们就把修改提交到了版本库。
在修改过的文件上“右键→TortoiseSVN→Show Log”,可以看到对这个文件所有的提交,在不同的 revision 条目上“右键→Compare with working copy”,我们可以比较工作拷贝的文件和所选 revision 版本的区别。
[b][color=Red][size=5]3. 基于Apache服务器的配置(参考网上的一些资料)[/size][/color][/b]
3.1 安装Apache服务器
按照提示安装就好了,比如我这里安装到:
C:\Program Files\Apache Software Foundation\Apache2.2
如果80端口已经被占用了,如图:
[attach]9401[/attach]
可以修改Apache的httpd.conf文件将端口修改为8088,如图:
[attach]9402[/attach]
3.2 拷贝文件
进入Subversion的安装目录(C:\Program Files\Subversion\bin),拷贝4个文件:
[color=Blue]intl3_svn.dll;libdb44.dll;mod_authz_svn.so;mod_dav_svn.so[/color]到Apache的modules目录(C:\Program Files\Apache Software Foundation\Apache2.2\modules)。
3.3 配置
3.3.1 修改Apache的httpd.conf文件
(C:\Program Files\Apache Software Foundation\Apache2.2\conf),
在LoadModule部分的最后添加如下4行([b][color=Blue]按顺序添加[/color][/b]):
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
3.3.2 修改Apache的httpd.conf文件,
(C:\Program Files\Apache Software Foundation\Apache2.2\conf),
在此配置文件的最后添加如下内容:
[color=Red]<Location /svn>
DAV svn
SVNParentPath E:\TEST_SVN
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile E:\TEST_SVN\passwd
AuthzSVNAccessFile E:\TEST_SVN\Accessfile
Require valid-user
</Location>[/color]
说明:这样配置的意思是;
1. 你所有的版本库位于E:\TEST_SVN目录下;
2. 保存用户名密码的文件是passwd;位于E:\TEST_SVN\passwd;
3. 保存用户权限的文件Accessfile,位于E:\TEST_SVN\Accessfile
3.4 用户名/密码验证
上面已经提到用户名/密码的文件是passwd;要创建此文件需要用Apache下的htpasswd.exe文件进行创建。
建议先将Apache的bin目录加到环境变量Path,方便以后。
3.4.1 运行到E:\TEST_SVN;运行命令 htpasswd –c passwd test(此命令为创建passwd文件,test为用户名)
如图:
[attach]9403[/attach]
会提示输入密码,假定密码也为test。
3.4.2 此时已经在E:\TEST_SVN下创建了一个passwd文件,此文件包含用户名/密码信息。
3.4.3 同样运行命令 htpasswd –m passwd svntest(第一次用-c创建passwd文件;以后就用-m命令来添加用户了;更改用户的密码也用此命令);如图:
[attach]9404[/attach]
3.4.4 命令 htpasswd –D passwd svntest为删除用户(此处命令用大写的D);如图:
[attach]9405[/attach]
3.5 权限
上面已经提到保存用户权限的文件是Accessfile。
3.5.1 在E:\TEST_SVN下新建一个记事本之类的文档,然后将其改名为Accessfile。
3.5.2 用记事本之类的文本编辑器打开Accessfile,然后在里面添加访问权限,类似的格式如下:
[color=Red][groups]
admin = test,svntest
test_two = test
test_two_native = svnnative
[/]
* = r
@admin = rw
[/]
[test_two:/]
@test_two = rw
[/]
[test_two:/native]
@test_two_native = rw[/color]
说明:此前已经在E:\TEST_SVN目录下建了一个名称为test_two的版本库(方法前面已经有介绍);
1. groups的意思是以群组的形式控制权限,而admin和test_two是各自群组的名称;
2. *=r意思是所有的用户都有读的权限,rw是所有的用户都有读写的权限;
3. [/]是指所有的版本库;而[test_two:/]是指test_two这个版本库;[test_two:/native]是指test_two这个版本库下的native目录,test_two_native这个组对其有读写权限;
4. 这里只是一些最基本的权限设置,复杂一些的也类似如此。
3.5.3 重启Apache服务。
3.5.4 此时用TortoiseSVN客户端打开,可以成功浏览,如图:
[attach]9406[/attach]
(PS:附件为此帖子的资料整理,方便不能经常上网的朋友下载下来。)
scmscmscm 2008-6-29 11:34
Subversion 1.5 发布了。
可以到这里找资料 [url=http://bbs.iusesvn.com/forum-7-1.html]http://bbs.iusesvn.com/forum-7-1.html[/url]
[table][tr][td][url=http://bbs.iusesvn.com/thread-2739-1-1.html][attach]9720[/attach][/url][/td][td] [/td][td] [i][[url=http://bbs.iusesvn.com/forumdisplay.php?fid=7&filter=type&typeid=7][color=#0000ff]下载[/color][/url]][/i] [url=http://bbs.iusesvn.com/thread-2739-1-1.html]TortoiseSVN 1.5.0 windows安装包下载[/url] [size=3] [/size][url=http://bbs.iusesvn.com/thread-2739-1-1.html][size=3][color=#0000ff]1[/color][/size][/url][size=3] [/size][url=http://bbs.iusesvn.com/thread-2739-2-1.html][size=3][color=#0000ff]2[/color][/size][/url][size=3] [/size][url=http://bbs.iusesvn.com/redirect.php?tid=2739&goto=newpost#newpost][color=#0000ff]New[/color][/url] [/td][td][url=http://bbs.iusesvn.com/space-uid-3.html][color=#0000ff][i]PCplayer[/i][/color][/url][i]2008-6-23[/i] [/td][td][b]33[/b] / [i]831[/i][/td][td][i][url=http://bbs.iusesvn.com/redirect.php?tid=2739&goto=lastpost#lastpost][color=#0000ff]2008-6-29 10:11[/color][/url][/i] [i]by [/i][url=http://bbs.iusesvn.com/space-username-abcdefgh.html][i][color=#0000ff]abcdefgh[/color][/i][/url] [/td][/tr][tr][td][url=http://bbs.iusesvn.com/thread-1175-1-1.html][attach]9721[/attach][/url][/td][td] [/td][td] [i][[url=http://bbs.iusesvn.com/forumdisplay.php?fid=7&filter=type&typeid=7][color=#0000ff]下载[/color][/url]][/i] [url=http://bbs.iusesvn.com/thread-1175-1-1.html][color=#0000ff]TortoiseSVN 1.5中文帮助手册chm版[/color][/url] [attach]9722[/attach] [size=3] [/size][url=http://bbs.iusesvn.com/thread-1175-1-1.html][size=3][color=#0000ff]1[/color][/size][/url][size=3] [/size][url=http://bbs.iusesvn.com/thread-1175-2-1.html][size=3][color=#0000ff]2[/color][/size][/url][size=3] [/size][url=http://bbs.iusesvn.com/thread-1175-3-1.html][size=3][color=#0000ff]3[/color][/size][/url][size=3] [/size][url=http://bbs.iusesvn.com/thread-1175-4-1.html][size=3][color=#0000ff]4[/color][/size][/url][size=3] [/size][url=http://bbs.iusesvn.com/thread-1175-5-1.html][size=3][color=#0000ff]5[/color][/size][/url][size=3] [/size][url=http://bbs.iusesvn.com/redirect.php?tid=1175&goto=newpost#newpost][color=#0000ff]New[/color][/url] [/td][td][url=http://bbs.iusesvn.com/space-uid-3.html][color=#0000ff][i]PCplayer[/i][/color][/url][i]2007-4-6[/i] [/td][td][b]82[/b] / [i]11344[/i][/td][td][i][url=http://bbs.iusesvn.com/redirect.php?tid=1175&goto=lastpost#lastpost][color=#0000ff]2008-6-28 18:53[/color][/url][/i] [i]by [/i][url=http://bbs.iusesvn.com/space-username-vivian4700.html][i][color=#0000ff]vivian4700[/color][/i][/url] [/td][/tr][tr][td][url=http://bbs.iusesvn.com/thread-2759-1-1.html][attach]9723[/attach][/url][/td][td][attach]9724[/attach] [/td][td] [i][[url=http://bbs.iusesvn.com/forumdisplay.php?fid=7&filter=type&typeid=7][color=#0000ff]下载[/color][/url]][/i] [url=http://bbs.iusesvn.com/thread-2759-1-1.html][color=#0000ff]TortoiseSVN 1.5.0.13316中文包下载[/color][/url] [attach]9725[/attach] [url=http://bbs.iusesvn.com/redirect.php?tid=2759&goto=newpost#newpost][color=#0000ff]New[/color][/url] [/td][td][url=http://bbs.iusesvn.com/space-uid-10114.html][color=#0000ff][i]lformat[/i][/color][/url][i]2008-6-26[/i] [/td][td][b]7[/b] / [i]202[/i][/td][td][i][url=http://bbs.iusesvn.com/redirect.php?tid=2759&goto=lastpost#lastpost][color=#0000ff]2008-6-28 14:36[/color][/url][/i] [i]by [/i][url=http://bbs.iusesvn.com/space-username-xxiao.html][i][color=#0000ff]xxiao[/color][/i][/url] [/td][/tr][tr][td][url=http://bbs.iusesvn.com/thread-2769-1-1.html][attach]9726[/attach][/url][/td][td] [/td][td] [i][[url=http://bbs.iusesvn.com/forumdisplay.php?fid=7&filter=type&typeid=7][color=#0000ff]下载[/color][/url]][/i] [url=http://bbs.iusesvn.com/thread-2769-1-1.html][color=#0000ff]Subversion 1.5.0 windows安装包[/color][/url] [/td][/tr][/table]
callmechen 2008-6-29 15:02
嘿嘿,楼上引用的SVN1.5还是我发的帖子::em49::
ymiemie2000 2008-7-3 11:01
VisualSVN-Server-1.5.rar
VisualSVN-Server-1.5.rar
CMStruggling 2008-7-6 17:47
[quote]原帖由 [i]ymiemie2000[/i] 于 2008-7-3 11:01 发表 [url=http://bbs.scmlife.com/redirect.php?goto=findpost&pid=101832&ptid=13462][img]http://bbs.scmlife.com/images/common/back.gif[/img][/url]
VisualSVN-Server-1.5.rar [/quote]
VisualSVN-Server-1.5.rar
MS没有附件传上来;
ymiemie2000有时间上来再弄一下咯。
::em60::
muxiaying 2008-7-11 13:16
要是现在装好,不是装在C盘下 ,重装系统后,还要装一次吗
CMStruggling 2008-7-16 08:48
[quote]原帖由 [i]muxiaying[/i] 于 2008-7-11 13:16 发表 [url=http://bbs.scmlife.com/redirect.php?goto=findpost&pid=103809&ptid=13462][img]http://bbs.scmlife.com/images/common/back.gif[/img][/url]
要是现在装好,不是装在C盘下 ,重装系统后,还要装一次吗 [/quote]
不装在系统盘下;
重装系统后,不需要再重新装的;
一般的软件不都是么。
oceansky112 2008-7-16 13:33
谢谢小马哥,继续学习中。。。
yexuxiu 2008-8-14 14:35
回复 沙发 的帖子
这个算是比较全的资料了,HEHE
muxiaying 2008-8-20 15:56
好贴,按照安装说明,去试试
muxiaying 2008-8-21 15:58
集成Apache和SVN 不能集成,怎么把
Apache下面的状态栏已经是Apache/2.0.63 SVN1.4.6 DAV/2