svn环境部署

SVNService 服务端
TortoiseSVN 客户端

注意:以上两个软件是不同的团队开发的。 尽量让其版本接近,如果出现无法连接等问题,
请检查服务器是否PING通,SVN服务器服务是否开启。
如果出现SASL机制不匹配则在svnserve.conf文件中将[sasl]下的条目全部用#注释掉

1.下载上面两个软件, 无所谓安装顺序, 因为都是windows版本, 直接exe运行即可。

2.安装完成,查看电脑的环境变量。 Path位置是否有
C:\Program Files\Subversion\bin;
C:\Program Files\TortoiseSVN\bin
这两个路径。

3.命令行测试 svn –version,查看SVN的版本信息, 显示代表SVNService 成功。

4.选择一个文件夹作为你的工作区域。 作为仓库repository。
右键-TortoiseSVN -create repository here 创建仓库位置。

仓库创建完成后, 生成4个文件夹,和Desktop.ini,svn.ico,README.txt,format文件

这四个文件夹,
Conf–设置, 中有authz,passwd,svnserve.conf 三个配置文件。
Db–数据存储
Locks–锁
Hooks–钩子

在Conf 配置文件中 #代表注释。

Passwd中 设置, 有几个人用,就设置几个账户与对应密码
[users]
user= Passwd

Svnserve.conf中设置基本的SVN服务器的配置
[general]
anon-access=none 未登录则无权限进入
auth-access=write 角色都有写权限
password-db=passwd 密码的数据位置 指向(上面)Passwd 配置文件

配置完成,则可以通过TortoiseSVN访问
file:///盘符:/文件夹名
svn://IP

file:///磁盘驱动器|/repository所在目录/子目录
http://账号@服务器名称/ repository所在目录/子目录
https://账号@服务器名称/ repository所在目录/子目录
svn+ssh://账号@服务器名称/ repository所在目录/子目录
其中,http表示使用一般的超文字传输通讯协议。https表示使用加密的超文字传输通讯协议。svn+ssh表示透过SSH加密通讯的管道,进行存取。

HTTP访问时需要指定端口号。
返回( success ( 2 2 ( ) ( edit-pipeline svndiff1 absent-entries commit-revprops depth log-revprops atomic-revprops partial-replay ) ) )

如果你想做成局域网可以访问的。那SVNService 就用到了。

SVNService 就是一个可以供局域网访问的服务器,其控制访问多过程中的处理。
访问的仓库位置 是你的 TortoiseSVN 建立的仓库、配置,等等。

其他人只要有TortoiseSVN 就可以通过你的SVNService 服务器 协同你本机上的TortoiseSVN 数据仓库。 当然要符合你配置的权限,账户,密码。

SVNService 安装完成后, 运行需要进行启动。

Subversion可以通过控制台启动,输入svnserve –d就可以启动服务器,但是一旦该控制台关闭,服务器也就关闭了。

三种方式启动
cmd 输入 svnserve -d 启动服务器,但是这个cmd框不能关闭。否则服务器将关闭
每次都要输入麻烦。于是有了2.
把次cmd 写入到注册表中。创建一个批处理程序名称为svnserve.bat,代码行svnserve –d ,将文件放到C:\Documents and Settings\Administrator\「开始」菜单\程序下面,然后重启电脑,桌面会弹出一个svnserve dos窗口。
在桌面显示,而且还不能关,影响操作,于是有了3
SC命令创建一条WINDOWS 服务, 此服务执行svnserve –service
–service 是svnserve.exe的 针对服务的操作。 命令可以把 svnserve 的服务器启动附加到 windows服务上, 此服务启动,则 svnserve 的服务器启动。 可以设置 windows服务开机自动启动。

以上说的是启动服务器, 但是此服务器并没有指向对应的仓库。
如果没有仓库, 那就无法进场存储。 于是还要指向 存储位置。
输入命令:svnserve –d –r D:\svnroot
启动Subversion服务器的存储库,在D盘的svnroot目录下

你会发现, 存储地址的位置 必须与 启动服务器的命令配套。

于是svnserve –service 可以写成 svnserve –service –r D:\svnroot

当然,这个存储位置,可以是任意的, 不一定是TortoiseSVN 的仓库文件夹。
我为了方便,就把它指向了TortoiseSVN 的仓库文件夹。

开启svnserve 服务器后。可以通过局域网的TortoiseSVN 进行操作了。
但是你服务器上并没有数据,选中你在做的工程文件夹, 右键TortoiseSVN -import
通过svnserve 服务器的URL,把这个工程导入到svnserve 服务器上。
存储到svnserve 服务器配置的文件夹中。

于是,其他人就可以checkout等操作了。

本人声明:沐海(http://my.oschina.net/mahaisong)

 以上文章是经过本人设计实践和阅读其他文档得出。如果需要探讨或指教可以留言!欢迎交流!

你可能感兴趣的:(svn环境部署)