详细参考资料:http://blog.sina.com.cn/s/blog_67f81bad0100um19.html
1、
Subversio简介:
Subversion是一个自由,开源的版本控制系统,可以随意地免费下载、修改、以及重新发布。
是一个通用系统,可以管理任何类型的文件。
服务器运行方式:独立服务器和借助apache。
存储版本数据方式:一种是在 Berkeley DB 数据库中存放数据。另一种是使用普通文件,采用自定义的格式来储存,称为 FSFS。
Tortoisesvn简介:
TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端。
其它详细介绍请百度谷歌。
2、
Subversion下载地址:
我下载的是1.6.0版本:Setup-Subversion-1.6.0.msi
3、
TortoiseSVN-1.6.15.21042-win32-svn-1.6.16.msi
下载地址:http://tortoisesvn.net/downloads.html
TortoiseSVN汉化语言包下载:在同一页下面的地方。下载相对应版本的汉化包。如果版本不对应,是不能汉化成功的。
LanguagePack_1.6.15.21042-win32-zh_CN.msi简体中文汉化包下载地址:
http://downloads.sourceforge.net/tortoisesvn/LanguagePack_1.6.15.21042-win32-zh_CN.msi?download
汉化结果图。
4、
安装按照提示一直点下一步下一步即可。TortoiseSVN安装完成后,需要重启电脑。
5、
运行Subversion服务器需要建立一个版本库(Repository),用来存放项目代码。
两种方法建立版本库:
1)、开始-à运行-à输入cmd-à打开了dos窗口,输入:
svnadmin create C:/projectname/repository
后面为你要建立的版本库路径。
2)、使用TortoiseSVN工具创建:
在你要创建版本库的路径C:/projectname/repository下,右键-àTortoiseSVN-àCreate Repository here...,然后就创建了一系列目录和文件。有的可以选择存储版本数据方式,这里默认是在 Berkeley DB 数据库中存放数据,看到下图那个db文件夹了嘛。
注意:建立版本库的路径中的文件,文件名不能有空格,否则会建立不成功的。
6、
1)修改svnserve.conf文件
打开C:/projectname/repository/conf目录下的svnserve.conf文件。
原来配置:
[general]
# anon-access = read
# auth-access = write
# password-db=passwd
修改成以下配置,去掉前面的#号:
[general]
anon-access=none
auth-access=write
password-db=passwd
解释:anon-access=none为未验证用户没有任何权限,如果这里不改,用户不用输入密码即可获得代码版本。
auth-access=write已验证用户给予写权限。
password-db=passwd将密码存到passwd文件中。
2)修改passwd文件
原来配置:
[users]
#harry = harryssecret
#sally = sallyssecret
“=”号前面是用户名,后面是密码。按照这种格式建立自己的用户名和密码。
[users]
xinxin = 123456
7、
启动服务器的版本库,启动后,不要关闭dos窗口。
开始à运行à输入cmdà输入svnserve -d -r C:/projectname/repository
8、
在C:/testproject这有一个项目,右键àTortoiseSVN->Import...
在URL of repository输入“svn://127.0.0.1/testproject”,点确定上传。
如果没有报错,数据就已经全部导入到了我们刚才定义的版本库中。
输入用户名和密码,勾上保存认证,记住密码。
9、
在安装了TortoiseSVN的客户端检出项目,将服务器端的项目代码下载到本地电脑上。
你想在d:/myproject/xinxin目录检出项目,在该目录下右键->Checkout,在URL of repository中输入svn://127.0.0.1,IP地址为服务器的地址。这样就得到了一份工作拷贝。
在工作拷贝中作出修改并提交:
打开test.txt,作出修改,然后右键->Commit...,这样就把修改提交到了版本库。
10、
将服务器注册成系统服务,subversion就会随电脑启动了。
系统启动
sc create subversion_service binpath= "C:/Program Files/Subversion/bin/svnserve.exe --service -r C:/projectname/repository" displayname= "Subversion Repository"
depend= Tcpip start= auto
解释:subversion_service为服务的名称。所有的系统服务可以在dos下通过命令手动启动和停止。启动:net start subversion_service 停止:net stop subversion_service
binpath为安装subversion的路径,可执行文件的路径。
displayname= "Subversion Repository"为注册成的系统服务显示名称,注册成功后,可以在系统服务中找到这个名称。
depend= Tcpip为依赖Tcpip协议。
start= auto为注册成的系统服务启动类型为自动。
系统服务在哪看?
经常有新手配置基于svnserve的subversion服务器后,
在客户端访问subversion版本库时出现这个错误:
svnserve.conf:12: Option expected
为什么会出现这个错误呢,就是因为subversion读取配置文件svnserve.conf时,无法识别有前置空格的配置文件
在建立好版本库,初次import项目到版本库的时候,报错” 期望文件系统格式在”1″到”4″之间 发现格式”6″ “
解决方法是,不要手动建立版本库,使用dos命令建立,
解决方法:http://www.myexception.cn/open-source/1476968.html
在SVN进行导入项目出现这个问题.网上的答案告诉我们服务端和客户端版本不一致的原因导致上述问题的发生。
系统在没重新安装之前,svn 都正常,重装之后,创建版本库就有问题,svn 服务器版本是1.6.0.3 ,客户端是1.6.3
这个问题的原因是由于你使用TortoiseSVN进建立版本库,这就要求你的这两个软件的版要相同,如果不同的话,就会出现这个问题,
我也查了很多文件,大部分解决方法是把这两个软件重新安装到同一版库,但是这样做比较麻烦,
我给大推荐一个,不能重装软件的方法,就是用dos命令来建版本库
用dos进入到你的svn安装目录下的bin文件夹
再执行这一句话
>svnadmin create d:\svn
这样就再也不会出现上述错误了