1月
6
安装Subversion
1.安装Apache+Subversion
版本:
apache2.0.59: 我安装在D:/apache2
subversion 1.4.2: 我安装在D:/Subversion/
注意:subversion暂不能在apache2.2上运行
下载两个文件,先安装apache,在安装subversion,一路下一步就行,没什么好说的。惟一说明是在安装subversion时选择附加步骤时需要选中 install and configure apache(默认是选中的,没有注意到也没关系)。贴图如下:
图subversion_install.png

安装完成后,apache配置文件http.conf中自动加入了两行:
2.安装TortoiseSVN
版本:
TortoiseSVN-1.4.1.7992-win32-svn-1.4.2.msi我安装在D:/TortoiseSVN
一路下一步就成,安装完成时提示重启,重启只是影响外观,对使用不造成任何影响,所以暂时不管,选No。你也可以选择重新启动explorer.exe进程来完成。
3.建立repository
建立文件夹,我选择在E:/svn2,(因为现在是重新安装演示,E:/svn有我原有数据,所以,建立一个空的svn2)
右键,在E:/svn2建立一个repository
图subversion_createrepository.png,

这时弹出一个subversion存储类型的选择框,只是使用的话,两种类型可以随便选,选择FSFS。选择后安装完成。

4.配置apache
在第一步subversion安装时自动插入的两行一下插入:
Location 的值为访问svn时的url后缀,如127.0.0.1/svn,也可以使用二级域名
SVNPath的值为第三步建立的repository路径
AuthUserFile 为访问密码文件路径
LimitExcept 为权限控制。这里设定的是除了GET(获取)等操作外,都需要对用户验证, 更多权限配置管理参考svn_book
如果是域名绑定则使用:
5.建立密码文件

注意 -c
文件内容如下:
6.重启apache,察看127.0.0.1/svn
得到了:Revision 0: /
7.规划subversion结构
7.1:建立一个项目EEmap:
任意目录右键,TortoiseSVN->Repo-browser->输入地址http://127.0.0.1/svn
create Folder -> 输入name (EEmap)->输入 logmessage (EEmap Project)
这时就需要密码了。填入刚才的自己的用户名,密码,建立成功
7.2: 建立项目的内部结构:
按照这种方法。建立整个svn的结构,如下
如图:subversion_constructOK.png

7.建立工作复本
建立文件夹,checkout
如图subversion_checkout.png

建立成功之后,在EEmap目录下自动创建一个服务器上的备份,以及一个.svn的隐藏文件,EEmap文件夹上也会出现一个绿色的钩记
8.导入工作复本
由于lab.rollenc.com已经在我的文件中了,所以,我不需要建立,而需要导入
在lab.rollenc.com中导入
如图:subversion_import.png

但是import之后,这个还并不是你的工作复本,你需要check out才能建立你的工作复本,而直接在lab.rollenc.com文件中check out则会出错,因为该目录中已经存在它需要取出的文件。
解决方法:
由于这个工作复本已经在subversion服务器上了,所以,你完全可以放心直接删除lab.rollenc.com里面的所有文件,再checkout一次。
9.建立、修改文件,并提交
略去,参看svn_book
10. 建立版本号:
现在,如果我们建立了EEmap的原始模型,团队认为,可以发布0.1版本了,那么,简单的建立一个版本:
在repo中选择copy to
输入 http://127.0.0.1/EEmap/branch/versions/version0.1

ok,建立成功
在任何时候你都可以使用check来取出0.1版本,这个版本不收主干文件的干扰 http://127.0.0.1/EEmap/branch/versions/version0.1
完成之后,现在我的subversion内的文件如下:
subversion_basedone.png

基本的使用告一个段落
进阶使用
待续。。
[感谢samon对我上文中部分错误的指正]
1.安装Apache+Subversion
版本:
apache2.0.59: 我安装在D:/apache2
subversion 1.4.2: 我安装在D:/Subversion/
注意:subversion暂不能在apache2.2上运行
下载两个文件,先安装apache,在安装subversion,一路下一步就行,没什么好说的。惟一说明是在安装subversion时选择附加步骤时需要选中 install and configure apache(默认是选中的,没有注意到也没关系)。贴图如下:
图subversion_install.png

安装完成后,apache配置文件http.conf中自动加入了两行:
LoadModule dav_svn_module "D:/Subversion/bin/mod_dav_svn.so"
LoadModule authz_svn_module "D:/Subversion/bin/mod_authz_svn.so"
2.安装TortoiseSVN
版本:
TortoiseSVN-1.4.1.7992-win32-svn-1.4.2.msi我安装在D:/TortoiseSVN
一路下一步就成,安装完成时提示重启,重启只是影响外观,对使用不造成任何影响,所以暂时不管,选No。你也可以选择重新启动explorer.exe进程来完成。
3.建立repository
建立文件夹,我选择在E:/svn2,(因为现在是重新安装演示,E:/svn有我原有数据,所以,建立一个空的svn2)
右键,在E:/svn2建立一个repository
图subversion_createrepository.png,

这时弹出一个subversion存储类型的选择框,只是使用的话,两种类型可以随便选,选择FSFS。选择后安装完成。

4.配置apache
在第一步subversion安装时自动插入的两行一下插入:
Location 的值为访问svn时的url后缀,如127.0.0.1/svn,也可以使用二级域名
SVNPath的值为第三步建立的repository路径
AuthUserFile 为访问密码文件路径
LimitExcept 为权限控制。这里设定的是除了GET(获取)等操作外,都需要对用户验证, 更多权限配置管理参考svn_book
<Location /svn>
DAV svn
SVNPath "E:/svn2"
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile "D:/Apache2/svn.password"
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
如果是域名绑定则使用:
<VirtualHost 127.0.0.10>
ServerName svn.rollenc.com
DocumentRoot E:/svn2
<Location />
DAV svn
SVNPath "E:/svn2"
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile "D:/Apache2/svn.password"
<LimitExcept>
Require valid-user
</LimitExcept>
</Location>
</VirtualHost>
5.建立密码文件

注意 -c
文件内容如下:
rollenc:$apr1$ek/.....$esgXZzlr/JLPsnxkfQjss1
test:$apr1$qr/.....$b95NrDKp9mHU84of3KX8c1
6.重启apache,察看127.0.0.1/svn
得到了:Revision 0: /
7.规划subversion结构
7.1:建立一个项目EEmap:
任意目录右键,TortoiseSVN->Repo-browser->输入地址http://127.0.0.1/svn
create Folder -> 输入name (EEmap)->输入 logmessage (EEmap Project)
这时就需要密码了。填入刚才的自己的用户名,密码,建立成功
7.2: 建立项目的内部结构:
按照这种方法。建立整个svn的结构,如下
svn
|-EEmap
| |-trunk
| |-branch
|-lab.rollenc.com
| |-trunk
| |-branch
如图:subversion_constructOK.png

7.建立工作复本
建立文件夹,checkout
如图subversion_checkout.png

建立成功之后,在EEmap目录下自动创建一个服务器上的备份,以及一个.svn的隐藏文件,EEmap文件夹上也会出现一个绿色的钩记
8.导入工作复本
由于lab.rollenc.com已经在我的文件中了,所以,我不需要建立,而需要导入
在lab.rollenc.com中导入
如图:subversion_import.png

但是import之后,这个还并不是你的工作复本,你需要check out才能建立你的工作复本,而直接在lab.rollenc.com文件中check out则会出错,因为该目录中已经存在它需要取出的文件。
解决方法:
由于这个工作复本已经在subversion服务器上了,所以,你完全可以放心直接删除lab.rollenc.com里面的所有文件,再checkout一次。
9.建立、修改文件,并提交
略去,参看svn_book
10. 建立版本号:
现在,如果我们建立了EEmap的原始模型,团队认为,可以发布0.1版本了,那么,简单的建立一个版本:
在repo中选择copy to
输入 http://127.0.0.1/EEmap/branch/versions/version0.1

ok,建立成功
在任何时候你都可以使用check来取出0.1版本,这个版本不收主干文件的干扰 http://127.0.0.1/EEmap/branch/versions/version0.1
完成之后,现在我的subversion内的文件如下:
subversion_basedone.png

基本的使用告一个段落
进阶使用
待续。。
[感谢samon对我上文中部分错误的指正]
Defined tags for this entry: subversion, 技术

2007年01月15日 21时35分30秒
建立一个subversion的同步测试服务器
很多人开始使用subversion之后,就想着,要建立一个测试用的服务器,不需要把文件update到本地再进行测试。这个在我以前的一篇文章中写过,但当时理解也不深,也写得很含糊。现在连自己都看不懂了。 原理: 基于subversion的钩子,即hook。在subversion执行一个操作时,那会相应的首先去调用相关的钩子程序(如果存在的话)。那么实现一个同步的测试服务器,我们只需要在一个用户执行完毕一个commit操作之后,让钩子程序去自动更新测试服务器的文件即可。通过这个思路,我们需要作的就是建立 回复 ()