不断的学习+不断的经历+不断的思考!!
仅供学习和交流,如果转载,请注明转载来源
SVN(Windows) 的安装和配置
上一篇 /
下一篇 2009-11-17 15:48:11 / 天气: 冷
/ 心情: 平静
/ 个人分类:实践应用
一、TortoiseSVN:
TortoiseSVN 是Subversion版本控制系统的一个免费开源客户端,可以超越时间管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。你可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。
Subversion 是一种集中的分享信息的系统,它的核心是版本库,储存所有的数据,版本库按照文件树形式储存数据-包括文件和目录,任意数量的客户端可以连接到版本库,读写这些文件。通过写数据,别人可以看到这些信息;通过读数据,可以看到别人的修改。
最特别的是 Subversion会记录每一次的更改,不仅针对文件也包括目录本身,包括增加、删除和重新组织文件和目录。
二、安装Apache Server Software
在正式安装配置Subversion之前我们先来作点准备工作,由于我们以后会经常在命令行下执行命令,每次打开一个新的命令行窗口默认的当前目录都是C:\Documents and Settings\$UserName,这样在执行命令之前都要切换目录,很麻烦,所以我们先来解决这个问题。在“开始”-“运行”中输入“regedit”,打开注册表。找到\HKEY_CLASSES_ROOT\Folder\shell,如果没有shell,可以在Folder下新建一个名为shell的键,在shell下新建一个名为“命令行(Command Windows)”的键,在这个键之下再建一个新的名为“Command”的键,设置默认值为“cmd /K cd /d %L”。
- 从http://httpd.apache.org/download.cgi下载最新版本的 Apache(我使用的是apache_2.2.10-win32-x86-openssl-0.9.8i.msi)
- 请确认你输入的服务器 URL 正确(如果你的服务器没有 DNS 名称,请直接输入 IP 地址);
- 建议为所有用户在 80 端口安装 Apache 服务;
- 现在可以测试 Apache 服务器是否正确运行,将浏览器指向
http://localhost/
- 将会看到一个预先配置的网站。 - 如果你已经有了 IIS 或其他监听 80 端口的程序,安装会失败。如果发生这种情况,直接到程序的安装目录
\Apache Group\Apache2\conf
,打开httpd.conf
。编辑文件的Listen 80
为其他可用的端口,例如Listen 8080
,然后重新启动 - 这样就不会那个问题了。(更改端口处Listen 192.168.1.22:8080;ServerName 192.168.1.22:8080)
三、安装Subversion
- If you have Apache 2.2.x go tohttp://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100.(我使用的是Setup-Subversion-1.6.6.msi)
- 运行Subversion安装程序,并根据指导安装,如果Subversion认识到安装了Apache,就几乎完成了工作,如果它没有找到Apache服务器,还有额外的步骤;
- 到Subversion的安装目录(通常是
C:\Program Files\Subversion\bin
),找到文件mod_dav_svn.so
mod_authz_svn.so
,
- 复制这些文件到Apache的模块目录(通常是C:\Program Files\Apache Software Foundation\Apache2.2\modules)。
- 从 Subversion 安装目录将
/bin/libdb*.dll
和/bin/intl3_svn.dll
复制到 Apache 的 bin 目录。 - 修改Apache的配置文件(通常是
C:\Program Files\Apache Group\Apache2\conf\httpd.conf
),做出如下修改: - 去掉以下几行的注释(删除 '
#
'标记):
#LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule dav_module modules/mod_dav.so
将以下两行到LoadModule
节的末尾。
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
四、创建版本库
- 在(服务器端)D:\mySVN\下“建立名为6000,9000两个文件夹”,分别选中6000、9000右键——TortoiseSVN——“在此创建版本库”即可;
- 在将数据导入到版本库之前,首先得考虑如何组织数据。如果使用一种推荐或预设的布局,在后面的操作将会更容易许多;
- 在硬盘上创建一个空的文件用来创建想要的顶级目录--千万不要放任何文件进去!
- 通过在那个文件夹右键,选择→将这个结构导入到版本库中。这将导入临时文件夹到版本库的根目录形成一个基本的版本库布局;
导入的那个文件夹的名字并不存在于版本库中,仅仅是它所包含的内容。
五、配置
现在已经配置了 Apache 和 Subversion,但是 Apache 不知道如何处理 Subversion 客户端,例如TortoiseSVN。为了让 Apache 知道哪个 URL 是用作 Subversion 版本库,你需要使用任意文本编辑器(例如记事本)编辑 Apache 的配置文件(通常C:\Program Files\Apache Group\Apache2\conf\httpd.conf):
At the end of the config file add the following lines:
<Location /svn>
DAV svn
SVNListParentPath on
SVNParentPath D:/mySVN/
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile ./bin/passwd(根据自己定义的路径修改)
#AuthzSVNAccessFile svnaccessfile
Require valid-user
</Location>
This configures Apache so that all your Subversion repositories are physically located belowD:\mySVN\TestRepository
. The repositories are served to the outside world from the URL:http://MyServer/svn/
. Access is restricted to known users/passwords listed in thepasswd
file.
为了创建passwd
文件,再次打开命令行提示符(DOS 窗口),进入Apache2.2\bin
目录(通常是 C:\Program Files\Apache Software Foundation\Apache2.2\bin)
通过输入下面的命令创建文件htpasswd -c passwd <username>,(如:设用户名密码为qq)它将会创建名为 passwd 的文件用于认证。
增加其它用户bin\htpasswd passwd <username>,再次重启Apache服务。
将浏览器指向http://192.168.1.22:8080/mySVN/
,如果一切正常,你会被提示输入用户名和密码,然后你会看到版本库的内容如下:
六、安装TortoiseSSVN(我用的是TortoiseSVN-1.6.6.)
该工具的安装和配置按安装向导提示安装即可
七、检出工作副本
- 在客户端目标盘创建一个文件夹(TestSVN),右键——SVN检出——(不推荐使用,适合初次安装使用这个工具的TX)
- 确定后OK;
- 一般采用如下格式:确认后会提示输入用户名和密码;
- 此时文件夹TestSVN上有一个绿色的勾()。
常见问题见:http://subversion.tigris.org/faq.zh.html
配置过程有点麻烦,需要有足够的耐心。
收藏
举报
TAG: