软件配置
l 忽略文件
在SVN 的[Setting]的[General]中,设置需要忽略的文件以便忽略掉一些临时的、无用的文件,常被忽略的文件有*.opt *.ncb *.suo *.plg *.pch *.idb *.pdb *.scc *.obj Debug Release *.o *.bin *.out *.ilk *.aps debug release *.clw *.bak。每个程序员可以根据自己的需要进行修改忽略文件,上面只是使用VC++与Tornado编程时常用的一些忽略文件。
图 2.2
以上说的忽略文件是指全局的忽略文件。SVN还能在特定的目录中指定需要忽略的文件。忽略文件支持通配符。
l 合并比较工具
在Merge Tool中可以选择用来合并的工具,强烈推荐用Araxis Merge。在[Setting]->[Diff]中填入"C:\Program Files\Araxis\Araxis Merge v6.5\Merge.exe";在[Setting]->[Merge]的选项中,填入"C:\Program Files\Araxis\Araxis Merge v6.5\Merge.exe" %theirs %mine %merged ;其中"C:\Program Files\Araxis\Araxis Merge v6.5\Merge.exe"是指合并工具的路径,%theirs %mine %merged分别指..将要合并到主干的分支,主干,及合并后的结果。
图 2.3
当程序到达一个比较稳定的阶段,就需要把分支合并到主干上,下面讲述一下合并的流程。
在本节中继续使用上一节中所示的工程与SVN仓库讲解。
1.2.3.1 xb与lzj分别修改自己分支上的代码
现在,主干上的test_SVN.txt是空文档。
由xb与lzj修改提交后,两个分支中test_SVN.txt分别如下两图所示:
图 2.7 xb_051129分支下的test_SVN.txt
图 2.8 lzj_051129分支下的test_SVN.txt
1.2.3.2 xb将xb_051129分支合并到主干
xb先把主干check out到本地。然后在主干的目录上右键选择svn->merge,弹出如下窗口:
图 2.9合并对话框
此对话框的含义是把From指定的分支版本到To指定的分支版本之间的差异合并到主干上。
在这里分支选的是xb_051129。版本号的选定方法是点击From中的Show Log,在Log窗口中按住Ctrl键,点击选择"made a copy"之上的那个版本,以及最顶上的那个版本,如图 2.11所示。然后点击确定回到上图中的对话框,会自动填写From与To中的Revision号。
然后直接点击merge进行合并,你也可以通过dry run来看是不是两者之间有差异。由于没有其它人修改主干,所以合并的很顺利,下图是xb_051115与主干合并后的结果。合并完毕之后,由xb对主干进行提交。
图 2.11合并后,主干上的test_SVN.txt
1.2.3.3 lzj将lzj_051129分支合并到主干,解决冲突
xb合并完毕之后,lzj要将他的分支合并到主干上去,方法同上。但是由于xb已经修改过主干,所以产生了冲突,会弹出一个冲突对话框。双击对话框中的产生冲突的文件名,就可以调出工具对此文件进行合并,下图是我们用merge工具显示的界面。
图 2.12
l 首先比较第一个窗口与第二个窗口,把结果修改合并到第二个窗口。
l 然后确保光标处于第二个窗口时,点击上图中红色圈圈所示的按钮。这样会把第二个窗口的内容全部复制到第三个容口。之后保存,退出。
l 然后在工程目录上点右键,进行SVN->Resolved。这样会删除无用的临时文件。
l 最后提交所作的修改,并添加详细的注释。
你可以重命名、移动或删除你的文件或文件夹,但请使用SVN进行这些操作,否则之前的版本信息会丢失。
使用SVN删除、移动与重命名文件夹的方法是在文件/文件夹上点右键进行SVN操作,或直接在资源浏览器中使用右键拖放(会弹出SVN选项)。
文件的删除、移动与重命名之前,必须保证工作目录是最新的版本;进行这些操作之后,需要进行提交。
1.3.3 版本的回退
在代码的编写过程中,难免会有不尽人意的地方,你也许需要回退到某一个版本,但是在这个过程中可能有一些文件你想保留,也有一些文件你不想保留,这就牵扯到很复杂的版本管理过程,在这里给大家推荐几种方法。
1. 若是你编辑了工程,在没有提交的前提下,你想放弃这些修改,你可以直接选择revert就可以更新到工程的最新的版本。
2. 若是你想退回到某一个版本,你就可以直接选择update to reversion如图,这样我们就可以把我们的版本回退到你选中的版本去,这种情况下SVN并没有显示出有什么冲突,并且新建立的文件也还在,但是在这种情况下你并不能直接在你回退后的版本上进行编辑,因为SVN的版本控制还是在最新的主干上。我们需要update并解决冲突。
3. 你可以直接选择revert changes from this revision如图,这样的话你可以直接解决冲突并提交。不过这种方法的不足是,你新建的文件都没有了,整个工程都回退到之前的版本了。
4. 我推荐的一种方法是,直接export一个你需要的版本,然后用你export的版本覆盖你的最新的版本,这样你就可以不丢失你新建的文件,同时获得head的SVN控制文件。
图 13
相关推荐
SVN分支与合并,从创建分支到合并分支,步骤图文详解
SVN分支的意义: 简单说,分支就是用于区分开发版本与当前发布版本的。 1、 主干负责新功能的开发 2.、分支负责修正当前发布版本的bug(对于可以放入下个发布版本的改进性bug可以直接在主干上开发) 3.、...
NULL 博文链接:https://panfuy.iteye.com/blog/1278898
SVN分支合并到主干 分支 主干 合并 冲突 英文
SVN的目录结构解释与SVN创建分支、合并分支、切换分支的操作详解。
Eclipse svn创建分支、合并、切换讲解。 主要是合并操作。分支合并主干,已经冲突问题的解决。
一、分支与合并的概念 二、SVN分支的意义 三、如何创建分支与合并分支
SVN 拉分支 合并 有详细的SVN拉分支及合并操作
因此各开发成员需要建立自己的开发分支,并在此分支上进行开发工作,之后各开发成员把分支合并到主干上并形成较为稳定的版本,在后续的工作中各个成员重新从主干上建立新的分支,在此分支上继续开发,并其循环往复...
列举在开发过程中会出现的开发情况,规范在开发过程中分支的类型,何时分支何时合并
并带 SVN分支与合并 的详细操作文档(附图)。 SVN分支与合并的总结 1.分支(branche)的创建。 1、分支创建是建立在主干上的。 2、创建分支前将整个porject_name检出到本地,然后主干(trunk) 。 3、右键 选择 ...
二、 SVN分支简介 1、SVN仓库目录结构Repository 2、 结合eclipse创建分支 3、 结合eclipse创建标记tags 三、 合并主干和分支 1、 主干合并分支 2、 分支合并主干 3、 合并发生冲突 情况1:标记冲突,稍后处理。 ...
SVN使用的分支与合并,对大家应该有帮助的。
新手看看。高手绕道。主要是关于svn主干与分支互相合并的问题
在信息技术飞速发展的今天,为了加快开发的效率,提升各个部门的联动配合,SVN工具成为了我们必不可少的研发工具。 日益更新的用户需求和不断升级的版本,如何才能做到灵活控制版本,今天我们请到了智博创享web端...
SVN分支及合并使用文档.doc
eclipse 整理svn分支 SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统
描述了SVN的合并和同步策略,从分支方法、同步方法等方面进行了描述。
svn提交代码合并分支.txt
eclipse中利用svn创建、合并、切换分支