1.准备工作:
下载 subversion: Setup-Subversion-1.8.13.msi
参考地址: http://sourceforge.net/projects/win32svn/files/1.8.13/
下载 TortoiseSVN: TortoiseSVN-1.8.11.26392-x64-svn-1.8.13.msi
参考地址: http://tortoisesvn.net/downloads.html
* 下载后直接安装,不需要特别进行配置
* subversion的版本必须高于或者等于TortoiseSVN版本
2.创建SVN Repository:
方法一: 进入目录后使用命令行进行创建
svnadmin create myproject/repository
* myproject需要是已存在目录.可不建立,则创建命令如下:
svnadmin create repository
方法二: 使用TortoiseSVN进行创建:
右击文件夹 - TortoiseSVN - Create repository here
* 文件夹中必须为空,否则将创建失败
3. 修改Repository权限:
a. 配置repository/conf/svnserve.conf:
#anon-access = read #auth-access = write #password-db = passwd #authz-db = authz 将这四行前的#号去掉 然后将anoa-access = read改为anon-access = none(禁止匿名访问)
b. 配置repository/conf/passwd
形式如下: [users] username = password
c. 配置repository/conf/authz
[groups] 用户组名 = 人员1,人员2 [/]@用户组名 = rw* =
* [/]代表项目的根目录,下面是读写规则,可为不同目录添加不同读写规则
* r代表可读取,rw代表可读取写入
4. 启动SVN服务:
编写bat文件,可以较为方便地进行启动:
sc stop svnserve sc delete svnserve sc create svnserve binpath= "Subversion安装目录/bin/svnserve.exe --service -r 创建repository的目录" DisplayName= "SVN Service" depend= tcpip start= auto sc start svnserve pause
* 执行显示如上,则表示服务开启成功
5. 连接本地Repository并check out:
新建文件夹 - 右击 - SVN Checkout - 输入URL: svn://localhost/repository - 确认
* 出现Completed | At revision: 0 即为成功
6. 上传代码:
a. 在本地文件中加入新文件后上传到Repository:
文件夹内空白处 - 右击 - SVN Commit - 新添加的文件将会显示 - 打钩并确认
b. 修改本地文件后上传到Repository:
右击该文件 - SVN Commit - 已修改的文件将会显示 - 打钩并确认
7.问题解决:
7.1 服务没有及时响应启动或控制请求:1053
a. 确认启动bat文件没有书写错误,文件路径是否存在问题.
b. 确认subversion下载并安装正确,安装slik subversion也不会成功启动服务.
7.2 checkout时出现error:期望文件系统格式在“1”到“3”之间;发现格式“6”
a. 确认subversion版本等于或高于TortoiseSVN版本.
b. 重启SVN服务再进行尝试.
7.3 svn commit时候出现:认证失败
a. 通常是repository/conf中的配置文件修改出现问题:确保每一行修改行首都没有加进空格.
b. authz中目录的配置必须书写正确,如不确定,请只保留这个[/].
7.4 在repository中没有找到项目文件
正常现象.svn是基于关系数据库的(BerkleyDB)或一系列二进制文件的(FS_FS).一方面这解决了许多问题 (例如,并行读写共享文件)以及添加了许多新功能(例如运行时的事务特性).然而另一方面,数据存储由此变得不透明.
基于以上所以你在服务上是找不到你提交的原始文件,因为svn每次提交做的都是原子提交,所以你在服务器上能找到的都是一些碎片文件。