SVN合并分支、分支打分支,分支合并分支

由于之前没有做版本的管理,导致在后来分支的管理出现了救火的情况。
先说下自己的svn版本和合并的情况。
项目需求:在线版本保证最新,主干在开发,我打了在线版本做成分支,然后在分支上面修改bug。
但是说要在修改bug的过程当中应对一些紧急的bug,之前没做过svn分支的管理,只做过一些简单的更新、提交、编辑冲突。
直接开干,弄个svn服务端把环境模拟成自己的项目。
1.建立truck、branches、tag文件夹

在truck上面建立MyProject项目建立一个truck.txt文件,然后本地checkout,再右键打分支




然后右键switch选择分支,在to path点击刚刚建立分支的目录直接OK切换到分支目录下面。在当前分支下建立文件或者修改文件看在主干上是否受影响(正确是不影响的)。

首先我们先在分支上面再打一个分支,按照上面的步骤在branches下面建立一个MyProject1.1。如图是服务端看到的项目结构:


切换到MyProject1.1分支建立一个文件,或者是修改文件,提交。

下面来将MyProject1.1合并到/branches/MyProject分支上,先切换到/branches/MyProject分支上,右键选择Merge合并


点击NEXT,


继续NEXT,

如果有冲突文件的话就会出现

出现上面直接按merge合并到本地出现如下的冲突文件


然后手动编辑冲突再提交。就可以实现合并了。

TIPS:需要确定无误之后再提交,因为做的所有操作都是在本地执行的,不会影响svn服务器上面的代码,如果合并出错可以回滚的。右键有个Revert执行回滚就行。

个人感觉这个是分支合并到主干上面的,下面介绍下主干合并到分支。



还是上面的代码,不过需要切换到MyProject1.1分支上面。将/branches/MyProject这个分支合并到/branches/MyProject1.1



选择下面那个,NEXT


这里就有点恶心了。如果按照上面的图直接next的话,有冲突的文件会被直接update了。就是无法编辑冲突。网上找了一位老铁的文章,需要这样才可以。


这样才可以有编辑冲突的文件,编辑冲突,然后确定无误之后提交就行。

这位老铁的文章路径:点击打开链接

以上就是合并的两种方式,暂时还没用到合并branches回到truck主干。


后来想了下以后的代码管理应该是truck主干开发测试完成打包到tags下面标记上线。bug的修改应该是从tags下面打分支,而主干则是一直在走开发。