分支的基本概念就正如它的名字,开发的一条线独立于另一条线,如果回顾历史,可以发现两条线分享共同的历史,一个分支总是从一个备份开始的,从那里开始,发展自己独有的历史(如下图所示) ⑴创建分支 假设目前我们版本库中的项目的布局如下图: 如图所示,我们的项目放在了trunk(主线)目录,另外还有branch(分支)和tags(标签)目录,这样的布局是为了更清晰的区别主线、分支和标签三者的位置。 subversion对分支和标签是通过复制一份最新的版本库的快照来实现的。 开始创建分支: 在我们CheckOut的主线目录(trunk)上,右键点击然后选择“Branch/tag…” 在弹出的窗口中,将ToUrl指向branch目录并输入分支的具体目录名,,我们即将创建的分支便存放于此处,点击OK。 Update一下本地的branch目录,你就可以看到你刚刚创建的分支“”,这样一来我们的分支就创建完成了。 创建分支的最大的目的就是跟主线进行并行开发的时候不影响主线的开发。 因为你在分支上所做的提交都只存于分支上,主线上的Update是看不到分支的修改的。如下图所示,trunk只能看到r344的版本,并看不到r343的版本。 (什么时候应该使用分支呢?例如你接到了一个任务,完成这个任务需要三四个人的合作,你们之间需要共享资源,那们就可以创建一个专为这次任务的分支,参与此次任务的人员则在分支上做开发,等完成之后再合并到主线上,才不会出现将实现了一半的不完成功能也提交到主线上,影响主线的正常工作。又或者自己需要一个较长的开发周期来完成任务,这么长的时间内如果一直没有将资源进行提交,万一丢失了就前功尽弃了。当然分支不是只用于此类情况,还有其它很多种情况也能使用分支来达到目的。) 使用分支需要注意,由于长期的独立开发,可能会在合并回主线时出现较多的冲突。所以在支线上开发间期如果发现主干有更新,而且这个更新有可能将来跟你产生冲突,那你可以先将主线的内容合并到分支上。已免等到做了大量修改再来更新。(其实此过程跟分支合并到主线上是一样的操作,只是目的地不同。) 例如我们在主线上的版本为3,我们如何将此版本的信息合并到分支上呢? 在分支的根目录上右键点击,选择“TortoiseSVNàMerge…”。 在这里我们必需先弄明白一个合并背后的关健概念 合并的过程中发生的所有事:首先两个版本库树的比较,然后将区别应用到本地拷贝. 这个命令是包括三个参数的: 。 弄明白这些概念之后我们继续往下操作。 在弹出的窗口中,选择主线目录和其
svn分支与合并 来自淘豆网www.taodocs.com转载请标明出处.