在更新或提交时您可能会遇到冲突。如果在本地修改了一个资源,而在资源库的分支中具有该资源的更新修订版,则会发生冲突。特别是,分支将包含比您的资源的基本修订版更新的修订版。在这种情况下,可以选择执行下列操作之一:
通常,您想采用第三个选项(即,进行合并),原因是其它两个选项都存在工作损失问题。
“同步视图”指示与分支冲突的那些资源。对于冲突中的给定资源,您通常会想将您的更改与分支的资源中的更改合并。
例如,假设您和另一个小组成员都修改了同一个 html 页面。在“同步”视图中选择该资源时将显示本地资源与分支修订版的比较。通过循环使用和合并个别更改,对于每个更改,您可以决定是接受入局更改、拒绝入局更改还是将它与本地更改进行合并。当您完成合并时,保存更改。这将用合并结果覆盖本地资源。随后,就可以提交此合并的资源。
提示:当合并更改时,通常可以很方便地区分您已经合并了哪些文件。当完成了合并文件时,就可以从上下文菜单中选择标记为已合并。这将把文件的状态从冲突更改为出局更改。
可以对两个级别在“同步”视图中合并差异:
还可以自动为您合并更改。对于标记为 ASCII 的任何资源,执行小组 > 更新将自动合并到本地资源与分支资源的差别中。如果任何行都没有冲突更改,则其效果更好。如果存在冲突更改,则 CVS 将在文件中插入特殊标记,以指示不能合并的那些行。
从“同步”视图中进行更新时的情况稍有不同。对于冲突,进行更新时将提示您是合并更改还是将整个文件内容替换为远程对象的文件内容。
与资源库同步
更新
提交
从分支合并
比较资源
合并“比较”编辑器中的更改
www.cvshome.org: Bringing a file up to date
www.cvshome.org: Conflicts example
比较编辑器