以下以英文版为例,中文版同理选择对应位置选项即可。
合并是一个相对的概念,既可以从主干(trunk)合并到分支(branch),也可以从分支(branch)合并到主干(trunk),下文以从主干(trunk)合并到分支(branch)为例。
功能简述
为了保证一个相对稳定的文件版本,开发过程中有时会新建一个分支(branch) ,这样可以可以直接从分支获取资产以提高稳定性。
相关操作:SVN切分支
在我们提交主干(trunk)后,有时候需要把相同的提交传到分支,这个时候可以直接使用SVN的合并(merge)功能来简化操作。
操作说明
准备工作
需要本地拉取(Checkout)主干目录与分支目录,并尽可能保证干净无多余变化,以降低冲突可能性。
合并操作
在项目根目录上右键选择TortoiseSVN->Show log
,打开日志窗口。
![]() |
![]() |
---|---|
英文版 | 中文版 |
在所需合并的记录上右键选择Merge revision to...
,打开选择目标窗口。
![]() |
![]() |
---|---|
英文版 | 中文版 |
选择本地分支的根目录,等待完成即可。
解决冲突
若分支的版本与主干对不上,则SVN会尝试合并,如果失败则会提供如何解决冲突的确认框。
如果涉及到多人维护的文件,请充分沟通以减少异常。
为了表述清晰,下文把来源文件称之为主干,目标文件称之为分支。
-
Postpone - 暂不处理,分支会保持冲突状态,相关文件或目录会标红,SVN会创建临时文件需要及时处理
-
Accept Base - 放弃主干的文件,仍然使用分支的文件
-
Accept incoming - 使用主干的文件,覆盖分支的文件
-
Mark as resolved - 标记为解决,但需要注意此时文件仍处于冲突状态,SVN会删除临时文件
![]() |
![]() |
---|---|
英文版 | 中文版 |
合并成功
出现下面的提示说明合并成功,此时分支的文件已经被修改,正常提交(commit)即可。
![]() |
![]() |
---|---|
英文版 | 中文版 |