关于svn合并范围有点搞不懂?
假设主干的版本号是01,现在我创建一个分支branch假设起始版本号是02
假设本身主干有一个文件aa.txt,里面只有一数据,现在创建分支后,分支03版本删除这一行,04版本重新加上这一行,05版本又删除这一行,06版本又加上这一行,07版本又删除,03-07都是在分支上进行,现在问题来了1假设我合并03-07分支版本到主干,主干究竟最后是否只这一行呢?合并一个范围版本究竟如何理解,是这个范围的每个都保留,这几个版本都在对这一行操作,是不是最后一个才起作用?2将分支最后一个版本合并到主干上好理解,无非是最后一个版本是正确的,为什么还要合并分支某个范围?这个我不知道如何理解啊,比如我只合并04,06两个版本号,难不成最后的文件有三行?3.假设主干,也在修改,分支也在修改,他们的版本号是同一个变量,还是各自有他们的版本号?

解决方案 »

  1.   

    虽然经常用,但是没研究过我想是不是svn里除了第一版,其他存的是版本之间的不同之处,也就是差量存储,所以合并的时候要逐一合并。
      

  2.   

    以前这么试过
    主干里建个a.txt,创建分支。主干的a和分支里面的a分别修改。合并的时候会报a已存在的错误。
      

  3.   

    1.合并其实就像commit代码一样的,它会安装时间先后顺序来合并,如果是想你描述的同一行反复修改,合并后将会是最后一次操作提交的代码,不管他位于哪个分支,是以时间的commit的时间为顺序合并的。2.合并范围这个还是按照创建分支的时间先后顺序来合并的,比如合并分支时我不希望吧最后创建的分支合并进主干,这样合并后主干上的代码将是最后创建的分支的前一个分支的代码。3.版本号这个创建分支时可以指定,没有指定就会用主干的,不过合并是还是以文件的提交时间来的。就那一个文件来说,在不同分支中都做了修改,合并时将该文件在不同分支中最后一次提交的内容拿出来安装时间先后再次合并。
      

  4.   

    这么多文字。看的头痛。SVN多简单啊。合并干嘛。能用就行。