转自:http://www.341200.org/windows_xp_apache_tortoisesvn.html
1、软件准备
① 到 apache官方网站下载 apache_2.2.14-win32-x86-openssl-0.9.8k.msi安装包(下载附件也可以)
② 到 http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100 页面下载
Setup-Subversion-1.6.6.msi 安装包
③ 到http://tortoisesvn.net/downloads 下载TortoiseSVN-1.6.6.17493-win32-svn-1.6.6.msi ,
2、软件安装
① 安装apache 一般来说直接点下一步就可以了,在设置domain以及host的时候,没有自己的域名可以设置为localhost,Email填你自己的Email
下面两个选择项
for All Users,on port 80, as a Service –Recommended.
only for Current User, on port 8080, when started Manually.
意思是
为所有用户安装程序和快捷方式,端口80,作为服务安装,推荐
仅为当前用户安装程序和快捷方式,端口8080,启动apache服务手动启动
选择第一个注意80端口有没被占用,第二个则注意8080端口占用问题。
装好apache以后,这个时候,它已经在运行了,
你可以在浏览器的地址栏输入http://localhost看看页面是否出现
It works!
出现则表明安装成功,没有出现,检查可能出现的问题。
(Here我就遇到了端口号被占用的情况,于是修改端口号)
打开:C:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf
找到: Listen 80
为防止端口号被占用我改成了: Listen 8888
所以我访问的apache时候路径就得跟端口号:http://localhost:8888
② 安装Setup-Subversion-1.6.6.msi ,这个简单,没有什么特别的
③ TortoiseSVN-1.6.6.17493-win32-svn-1.6.6.msi 安装,简单,不用细说。
3配置
在C:\Program Files\Subversion\bin\目录下复制下面两个文件
mod_authz_svn.so
mod_dav_svn.so
粘帖到C:\Program Files\Apache Software Foundation\Apache2.2\modules,
然后我们再打开C:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf文件.
找到
#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
注意不要随意改变顺序。可能出现其它错误。
模块的加载设置完成,下面我们要设置SVN的版本库目录,以使我们的apache能知道访问不同的URL的时候,它去哪里寻找这个URL所对应的SVN目录.
在httpd.conf文件中,增加如下内容:
1 |
<Location /svn/myproject> |
上面使用了access.auth,和users.auth两个文件,我们后面创建。
在d:\创建svnroot 文件夹,然后通过svn的svnadmin命令创建数据仓库
(注意:D:\svnroot\myproject 这个路径是区分大小写的,如果建议都小心。否则你就等着重新操作吧!)
svnadmin create D:\svnroot\myproject
如果运行成功的话,什么也没有输出,
也可以按如下操作来创建数据仓库
在e盘下新建D:\svnroot\下创建myproject文件夹,通过TortiseSVN来创建。
选中myProject 右键选择TortiseSVN ,选择二级菜单 create repository here 在这个目录创建数据仓库
在创建的myProject文件夹下面我们会发现多了几个文件夹和文件,打开conf文件夹,然后使用editplus(如果没有安装editplus,可以用记事本或者写字板打开)再打开svnserve.conf文件,找到如下行# password-db = passwd,然后把它前面的#去掉,表示myProject是需要密码验证的.再打开conf文件夹下面的passwd文件,用文本编辑器打开,在[users]下面加上我们需要的用户和密码,比如
[users]
admin=admin
tom=123456
我们就启动了两个用户,一个叫admin,密码是admin,一个叫tom,密码是123456.
然后保存为passwd文件.
我们再建一个文件,叫access.auth,这个文件是设置访问权限的,里面内容如下:
[myproject:/]
admin = rw
[myproject:/module1]
tom=rw
admin=rw
rm表示可读可写,这表示,myproject下面的所有子目录admin都是有权限读写的,但是tom只有权限读写此项目下面的module1目录,这个各自的访问权限就分的更细致了.
命令行模式下,到apache安装目录下的bin目录下 操作如下
C:\Program Files\Apache Software Foundation\Apache2.2\bin>htpasswd -cb users.auth admin adminAutomatically using MD5 format.
Adding password for user jamC:\Program Files\Apache Software Foundation\Apache2.2\bin>
为admin用户设置好密码,创建第一个用户时创建文件,添加第二个用户则不用创建,具体命令参数有细微区别,请注意-cb
C:\Program Files\Apache Software Foundation\Apache2.2\bin>htpasswd -b users.auth tom 123456Automatically using MD5 format.
Adding password for user tomC:\Program Files\Apache Software Foundation\Apache2.2\bin>
此时把C:\Program Files\Apache Software Foundation\Apache2.2\bin 目录下的 users.auth 复制粘贴到
D:\svnroot\myproject\conf 目录下
重新启动apache服务,通过http://localhost:8888/svn/myproject/
注:没改端口号的访问 (http://localhost/svn/myproject/)
访问出现
myproject – Revision 0: /
表示配置成功,客户端TortiseSVN 配合使用。
好了,部署第一个项目:
在cmd命令行里输入: svn import E:\test\ file:///D:/svnroot/myproject/ -m “test import”
注意:
1.(D:\test\ ) 是你要部署的项目
2.(file:///D:/svnroot/myproject/)这是你建立版本控制的仓库路径
— 里面的 / 千万注意别写成 \ ,否则会操作失败。—
最后:
打开网址:http://localhost:8888/svn/myproject/
注:没改端口号的访问 (http://localhost/svn/myproject/)
访问会列出你项目的版本信息