VisualSVN+TortoiseSVN 搭配SVN环境

今天到新公司第一天上班,就要先架设一个SVN服务器。服务器是今天上午到的,中午午休后就开始装SVN了。

先上apache官网下载SVN: http://subversion.apache.org/
点左边的Binary Packages
选择Windows版本。乍一看,好多Server & Client的SVN啊,我被Visual这个字眼吸引下了VisualSVN.


VisualSVN一windows平台快速搭建SVN服务器 - windows9834 - 伍哥的博客
当然服务器和管理控制工具都装上

VisualSVN一windows平台快速搭建SVN服务器 - windows9834 - 伍哥的博客
这里可以修改代码库的保存位置,我的是"E:\Repositories\".
也可以修改访问代码库的方式http或https,我选了http,没有选https,后者慢一些,但安全性更好。
最下面是选择用户认证是使用windows用户还是Subversion自己的认证。我选了后者。
安装完后的界面
VisualSVN一windows平台快速搭建SVN服务器 - windows9834 - 伍哥的博客
看这个界面,那个顶端的黑色小三角是灰显的,说明SVN Server其实已经运行起来了 ~  

 第一步、创建用户组
开发组,管理组,测试组,等等
VisualSVN一windows平台快速搭建SVN服务器 - windows9834 - 伍哥的博客
 
第二步、当然是创建用户

 
VisualSVN一windows平台快速搭建SVN服务器 - windows9834 - 伍哥的博客
 第三步、当然是对用户进行分组,编辑用户组

 
VisualSVN一windows平台快速搭建SVN服务器 - windows9834 - 伍哥的博客
最后是创建代码库:在Repositories上右键-->Create New Repository-->创建第一个代码仓库
VisualSVN一windows平台快速搭建SVN服务器 - windows9834 - 伍哥的博客
 当然也可以创建多个代码库,但是我觉得这样不方便,比如在MyEclipse或TortoiseSVN客户端连接SVN服务器时无法列出所有项目,只能列出当前一个项目,不太方便,后面会说到.
这里我使用的是只创建一个代码库repos,在这个代码库下面再创建多个项目的文件夹,对第每个项目文件夹进行权限控制。
 
VisualSVN一windows平台快速搭建SVN服务器 - windows9834 - 伍哥的博客
这里在代码库repos下创建了三个文件夹,代表三个项目,可以对根目录和子目录进行权限控制,比如Repositories和repos目录所有用户都只有读取权限,但没有写入的权限.

--------------------------------------------------------------------------------------------------------------------

上面是服务器端。客户端主要是安装TortoiseSVN

【途中遇到的问题】
1. 上传代码,用import时,会报
 server sent unexpected return vaue(405 method not allowed) in response to MKCOL request for '/svn/test/!svn/txr/2-4/tags'
错误。

上网查了好多资料,最后是本地仓库中的文件与服务器上的仓库的文件中有重名的,就会报这个错误。一旦删除这些重名的文件和目录,再Import就没问题了。
如何不删除已重名文件,只上传新增文件或修改文件,正在查资料 ~~

2. 只修改了文件内部的内容,用import上传也会报405错误。这个也正在查资料。准备明天装好了Eclipse,再来试一下这个问题

创建分支使用步骤: 
  1、选择你要产生分支的文件,点击鼠标右键,选择[分支/标记...] 
  2、在[至URL(T)]输入框中将文件重命名为你的分支文件名,输入便于区分的日志信息,点击确认。 
  3、在SVN仓库中会复制一个你所指定的文件,文件名称就是你所命名的,但是在你的本地目录上看不到新建的分支文件名,要使你的文件更新作用到你的分支上,你必须选择文件,点击鼠标右键,选择[切换...],选择你重命名的文件,点击确定即可。这样你的本地文件就和分支文件关联上了,不要奇怪,这时本地目录上看到的文件名仍然为旧的文件名。 

经验小结  
  1、如果操作的文件之前还未提交,而你又想把文件提交到新的分支上,记得一定要选择切换 
  2、SVN分支的管理实际上就是把不同的分支用不同的文件保存,因此你在取得新版本的时候会发现,不同分支的最新文件也会被获取下来。 
  创建tag操作,相当于把当前的代码版本复制一份到其他地方,然后以这个地方为出发点进行新的开发,与原来位置的版本互不干扰。 
  对于branches、tags、trunk这三个目录,并不是subversion必需的,而是被总结的一种良好的团队开发习惯,其使用方法为: 
  1、开发者提交所有的新特性到主干。 每日的修改提交到/trunk:新特性,bug修正和其他。 
  2、这个主干被拷贝到“发布”分支。 当小组认为软件已经做好发布的准备(如,版本1.0)然后/trunk会被拷贝到/branches/1.0。 
  3、项目组继续并行工作,一个小组开始对分支进行严酷的测试,同时另一个小组在/trunk继续新的工作(如,准备2.0),如果一个bug在任何一个位置被发现,错误修正需要来回运送。然而这个过程有时候也会结束,例如分支已经为发布前的最终测试“停滞”了。 
  4、分支已经作了标签并且发布,当测试结束,/branches/1.0作为引用快照已经拷贝到/tags/1.0.0,这个标签被打包发布给客户。 
  5、分支多次维护。当继续在/trunk上为版本2.0工作,bug修正继续从/trunk运送到/branches/1.0,如果积累了足够的bug修正,管理部门决定发布1.0.1版本:拷贝/branches/1.0到/tags/1.0.1,标签被打包发布。 
  一般建立最初的repository时,就建好这三个目录,把所有代码放入/trunk中,如:要将project1目录下的代码导入repository,project1的结构就是:project1/branches,project1/tags,project1/trunk,project1/trunk/food.c,project1/trunk/egg.pc……,然后将project1目录导入repository,建立最初的资料库。然后export回project1,作为本地工作目录。

还有几个很有用的网址:
http://www.cnblogs.com/yuanyuan/archive/2011/01/28/1946903.html
http://blog.csdn.net/yangshun2008/article/details/5834023
 

主要参考文章(也转载了不少图片):http://blog.163.com/c_ear/blog/static/1858731572011614111848649/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值