安装
一、 获取资源
(1)apache Http Server 2.0.55 用于和 SVN 整合
下载地址 http://httpd.apache.org/download.cgi
(2)Setup-Subversion-1.6.6.msi SVN 服务器端
下载地址 http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100&expandFolder=8100&folderID=91
(3)TortoiseSVN-1.6.6.17493-win32-svn-1.6.6.msi SVN 的客户端
下载地址 http://tortoisesvn.net/downloads
(4)LanguagePack_1.3.2_zh_CN.exe tortoise 的语言包
下载地址
http://cdnetworks-kr-1.dl.sourceforge.net/project/tortoisesvn/Language%20Packs/1.6.6/LanguagePack_1.6.6.17493-win32-zh_CN.msi
(5)SVNService.zip SVN 的一个第三方工具,将 SVN 用做 windows 后台服务
如果是在win下,推荐 visualSVNServer 一站式服务,setup以后自动装好apache和svn,还提供管理界面,可以方便的配置权限。
二、 安装
上面的 1 、 2 、 3 、 4 均为直接安装即可,注意在安装完 3 再安装四的时候要重启一下,然后将 5 解压到 2 中安装目录下的 bin 目录中。至此安装完毕
三、 配置
没什么好特别配置的。基本上安装好了就可以使用,使用方式是用 3 的客户端工具选择一个空的文件夹右键 ---- à 在此创建文件库。一个 SVN 的仓库文件就创建完毕。因为要考虑到后面的 apache 的整合所以建议名字不要太专一性,然后转到项目或者你想加入版本控制的文件或者文件夹上面,点右键选择导入,在弹出的对话框里面输入仓库地址,执行导入完毕后一个完整的文件版本诞生了。
注意:在导入时 3 中的客户端默认是导入当前文件夹的子文件夹,所以如果你想将当前目录也导入的话,请将他放入一个文件夹内再执行导入操作。
然后是仓库的配置:转到仓库目录的 conf 中,寻找 svnserve.conf 文件并将其中的
[general]
anon-access = read
auth-access = write
password-db = passwd
realm = My First Repository
前面的 # 号去掉,然后去掉他前面的空格。保存。
这里的意思是: anon-access 指 匿名访问的权限,可以是 read,write,none, 默认为 read
auth-access 指 认证用户的权限,可以是 read,write,none, 默认为 write
password-db 指 密码数据库的路径,去掉前面的,存的是认证用户的用户名和密码, username=passwd
然后是修改 passwd 文件
1. 去掉 [users] 前面的 #, 否则 svn 只能以匿名用户登录,客户端不会出现登录窗口,除非你的 anon 不为 none, 否则将返回一个错误。
2. 添加用户名和密码 username=password
四、 启动 SVN 服务器
对于单个代码仓库
启动命令 svnserve -d -r /home/svnrepo --listen-host 192.168.100.200
其中 -d 表示在后台运行, -r 指定服务器的根目录,这样访问服务器时就可以直接用 svn:// 服务器 ip 来访问了。如果服务器有多 ip 的话 --listen-host 来指定监听的 ip 地址 .
我们可以在 svn 客户端中通过 svn://192.168.100.200 来访问 svn 服务器
对于多个代码仓库 , 我们在启动时也可以用 -r 选项来指定服务器根目录 , 但访问时需要写上每个仓库相对于 svn 根目录的相对路径 .
比如 , 我们有两个代码仓库 /home/repoa 和 /home/repob, 我们用 svnserve -d -r /home --listen-host 192.168.100.200 来启动 , 那么在客户端访问时可以用 svn://192.168.100.200/repoa 和 svn://192.168.1.200/repob 来分别访问两个项目
启动完成以后 , 我们可以用 ps aux|grep svnserv 来查看是否存在 svnserve 进程 .
在server端,新建一个目录用来存放所有的仓库。比如E:\svnrepos。然后在这个目录下建立每个项目独立的仓库。
svnadmin create "E:\svnrepos\xm1"
svnadmin create "E:\svnrepos\xm2"
五、 开放服务器端口
svn 默认端口是 3690 ,你需要在防火墙上开放这个端口。
也可以通过 svnserve 的 --listen-port 选项来指定一个已经开放的其他端口 , 不过这样的话客户端使用也必须家上端口 , 如 svn://192.168.100.200:9999/ 。
六、SVNService(将svn作为windows服务运行的工具)
SVN Service Wrapper for Windows
This is my Win32 Service wrapper for SVN. Source is included, and its in the public domain. No need to copyright this stuff.
Usage instructions:
SVNService -? to display this list
SVNService -install <svnserve parameters> to install the service
SVNService -setup <svnserve parameters> to change command line parameters for svnserve
SVNService -remove to remove the service
SVNService -debug to run as a console app for debugging
将svnservice.exe放在subversion的bin目录下
Example:
比如,你的所有项目都在c:\svnrepo下,你可以如下
安装时用 SVNService -install -d -r c:\svnrepo
更改时用 SVNService -setup -d -r c:\otherplace\svnrepo
如果访问其中的一个项目c:\svnrepo\project1,可以指定路径
svn://localhost/project1 (注:作为url时用/)
第一次安装完后要到服务中手动启动它,
或者到服务中将它设为自动启动,让每次机器启动时自动启动这个服务。
一、 获取资源
(1)apache Http Server 2.0.55 用于和 SVN 整合
下载地址 http://httpd.apache.org/download.cgi
(2)Setup-Subversion-1.6.6.msi SVN 服务器端
下载地址 http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100&expandFolder=8100&folderID=91
(3)TortoiseSVN-1.6.6.17493-win32-svn-1.6.6.msi SVN 的客户端
下载地址 http://tortoisesvn.net/downloads
(4)LanguagePack_1.3.2_zh_CN.exe tortoise 的语言包
下载地址
http://cdnetworks-kr-1.dl.sourceforge.net/project/tortoisesvn/Language%20Packs/1.6.6/LanguagePack_1.6.6.17493-win32-zh_CN.msi
(5)SVNService.zip SVN 的一个第三方工具,将 SVN 用做 windows 后台服务
如果是在win下,推荐 visualSVNServer 一站式服务,setup以后自动装好apache和svn,还提供管理界面,可以方便的配置权限。
二、 安装
上面的 1 、 2 、 3 、 4 均为直接安装即可,注意在安装完 3 再安装四的时候要重启一下,然后将 5 解压到 2 中安装目录下的 bin 目录中。至此安装完毕
三、 配置
没什么好特别配置的。基本上安装好了就可以使用,使用方式是用 3 的客户端工具选择一个空的文件夹右键 ---- à 在此创建文件库。一个 SVN 的仓库文件就创建完毕。因为要考虑到后面的 apache 的整合所以建议名字不要太专一性,然后转到项目或者你想加入版本控制的文件或者文件夹上面,点右键选择导入,在弹出的对话框里面输入仓库地址,执行导入完毕后一个完整的文件版本诞生了。
注意:在导入时 3 中的客户端默认是导入当前文件夹的子文件夹,所以如果你想将当前目录也导入的话,请将他放入一个文件夹内再执行导入操作。
然后是仓库的配置:转到仓库目录的 conf 中,寻找 svnserve.conf 文件并将其中的
[general]
anon-access = read
auth-access = write
password-db = passwd
realm = My First Repository
前面的 # 号去掉,然后去掉他前面的空格。保存。
这里的意思是: anon-access 指 匿名访问的权限,可以是 read,write,none, 默认为 read
auth-access 指 认证用户的权限,可以是 read,write,none, 默认为 write
password-db 指 密码数据库的路径,去掉前面的,存的是认证用户的用户名和密码, username=passwd
然后是修改 passwd 文件
1. 去掉 [users] 前面的 #, 否则 svn 只能以匿名用户登录,客户端不会出现登录窗口,除非你的 anon 不为 none, 否则将返回一个错误。
2. 添加用户名和密码 username=password
四、 启动 SVN 服务器
对于单个代码仓库
启动命令 svnserve -d -r /home/svnrepo --listen-host 192.168.100.200
其中 -d 表示在后台运行, -r 指定服务器的根目录,这样访问服务器时就可以直接用 svn:// 服务器 ip 来访问了。如果服务器有多 ip 的话 --listen-host 来指定监听的 ip 地址 .
我们可以在 svn 客户端中通过 svn://192.168.100.200 来访问 svn 服务器
对于多个代码仓库 , 我们在启动时也可以用 -r 选项来指定服务器根目录 , 但访问时需要写上每个仓库相对于 svn 根目录的相对路径 .
比如 , 我们有两个代码仓库 /home/repoa 和 /home/repob, 我们用 svnserve -d -r /home --listen-host 192.168.100.200 来启动 , 那么在客户端访问时可以用 svn://192.168.100.200/repoa 和 svn://192.168.1.200/repob 来分别访问两个项目
启动完成以后 , 我们可以用 ps aux|grep svnserv 来查看是否存在 svnserve 进程 .
在server端,新建一个目录用来存放所有的仓库。比如E:\svnrepos。然后在这个目录下建立每个项目独立的仓库。
svnadmin create "E:\svnrepos\xm1"
svnadmin create "E:\svnrepos\xm2"
五、 开放服务器端口
svn 默认端口是 3690 ,你需要在防火墙上开放这个端口。
也可以通过 svnserve 的 --listen-port 选项来指定一个已经开放的其他端口 , 不过这样的话客户端使用也必须家上端口 , 如 svn://192.168.100.200:9999/ 。
六、SVNService(将svn作为windows服务运行的工具)
SVN Service Wrapper for Windows
This is my Win32 Service wrapper for SVN. Source is included, and its in the public domain. No need to copyright this stuff.
Usage instructions:
SVNService -? to display this list
SVNService -install <svnserve parameters> to install the service
SVNService -setup <svnserve parameters> to change command line parameters for svnserve
SVNService -remove to remove the service
SVNService -debug to run as a console app for debugging
将svnservice.exe放在subversion的bin目录下
Example:
比如,你的所有项目都在c:\svnrepo下,你可以如下
安装时用 SVNService -install -d -r c:\svnrepo
更改时用 SVNService -setup -d -r c:\otherplace\svnrepo
如果访问其中的一个项目c:\svnrepo\project1,可以指定路径
svn://localhost/project1 (注:作为url时用/)
第一次安装完后要到服务中手动启动它,
或者到服务中将它设为自动启动,让每次机器启动时自动启动这个服务。