解决SVN中合并过的代码不能重新合并的问题
-
使用TortoiseSVN合并代码时,需注意两个点:
- 1、在要合并到的分支文件夹上右击鼠标,选中TortoiseSVN-->合并(M)...-->合并一个版本范围-->合并的源(必须选择与“要合并到的分支文件夹”相同的另一分支中目录)-->然后指定范围(在显示日志中选版本号)-->点下一步-->测试合并-->测试OK就正式“合并”-->有冲突就解决冲突
- 2、有时合并代码后,提交代码时才发现当前文件的版本不是最新的,不能锁定文件提交。此时有两种操作方法:一是直接更新该文件,如果有冲突就直接解决冲突。二是保险一点,先还原该文件,等更新完代码后再重新合并,以免更新时发生冲突,解决冲突时失误,覆盖、删除或修改了服务器上最新版本的代码。
-
采取方法二时,会遇到一个问题:比如版本号:26030之前合并过了,然后还原代码后再重新合并时,合并不了了。这是怎么回事呢?
从TortoiseSVN的帮助文档中描述如下:
4.21.5. 合并跟踪
Subversion 1.5 引入了合并跟踪特性。当你合并版本树时,版本号会被保存,此信息可以用于几个目的。
您可以避免合并同一版本两次的隐患 (重复合并问题)。一旦一个版本被标记为已合并,将来在版本范围中包含该版本的合并将会跳过它。
当您合并一个分支到主干时,日志对话框可以将分支提交作为主干日志的一部分来显示,这样可得到对更改更好的跟踪性。