主要内容

解决SVN源控冲突

检查和解决冲突

如果您和另一个用户在不同的沙箱或不同的分支上更改相同的文件,则在尝试提交修改后的文件时将出现冲突消息。遵循程序解决冲突在必要时提取冲突标记,比较导致冲突的差异,并解决冲突。

要解决冲突,你可以:

  • 使用比较工具合并修订之间的更改。

  • 决定用一组更改覆盖另一组更改。

  • 通过编辑文件手动进行更改。

有关使用比较工具合并更改的详细信息,请参见合并文本文件

在您对标记为冲突的文件感到满意之后,您可以标记冲突已解决并提交该文件。

解决冲突

  1. 在“当前文件夹”浏览器中查找冲突文件。

  2. 检查SVN带有红色警告符号的文件的状态列,表示冲突。

  3. 右键单击冲突文件并选择源控制>观点冲突比较版本。

  4. 检查冲突。将打开一个比较报告,其中显示文件与发生冲突的文件版本之间的差异。

  5. 使用比较工具报告来确定如何解决冲突。

    可以使用比较工具合并修订之间的更改,如中所述合并文本文件

  6. 当您解决了更改并希望在沙箱中提交版本时,在Current Folder浏览器中,右键单击该文件并选择源控制>冲突解决

  7. 提交修改后的文件。

合并文本文件

当比较文本文件时,您可以合并从一个文件到另一个文件的更改。合并更改在解决不同版本文件之间的冲突时非常有用。

如果你在文本比较报告中看到这样的冲突标记:

< < < < < < < .mine
然后在合并之前提取冲突标记,如中所述提取冲突标记

提示

你只能从左到右归并。当与源代码控制中的另一个版本进行比较时,正确的文件就是沙箱中的版本。左边的文件要么是先前版本的临时副本,要么是导致冲突的另一个版本(例如,文件名_theirs).观察比较报告顶部左右文件的文件路径。将左边(临时副本)文件的差异合并到右边文件以解决冲突。

  1. 在“对比工具”报表中,选择报表中的差异项,单击替换内容.选择的差值从左边的文件复制到右边的文件。

    单击,取消替换内容撤销

    或者,使用内联替换内容而且撤销图标。

    报告顶部的合并文件名显示了脏标志(文件名00 *)以显示该文件包含未保存的更改。

  2. 点击接受&结束保存合并更改并标记已解决的冲突。

提取冲突标记

什么是冲突标记?

源代码控制工具可以在未注册为二进制文件的文件中插入冲突标记(例如,文本文件)。你可以用MATLAB®提取冲突标记,并比较导致冲突的文件。这个过程可以帮助您决定如何解决冲突。

谨慎

使用源代码控制工具注册文件,以防止它们插入冲突标记和损坏文件。有关更多信息,请参见向SVN注册二进制文件.如果您的文件已经包含冲突标记,MATLAB工具可以帮助您解决冲突。

冲突标记有以下形式:

< < < < < < <文件描述符(“我”)(“我”文件内容 ] ======= [" 他们的“文件内容 ] <<<<<<<[" 他们的“文件描述符)

如果您试图打开包含冲突标记的文件,则会打开“冲突标记已找到”对话框。按照提示提取冲突标记来修复文件。提取冲突标记之后,按照中所述解决冲突检查和解决冲突

若要查看冲突标记,请在“已找到冲突标记”对话框中单击加载文件.不要尝试加载文件,因为MATLAB无法识别冲突标记。相反,点击修复文件来提取冲突标记。

MATLAB只检查冲突文件中的冲突标记。

提取冲突标记

当您打开一个冲突文件或选择观点冲突, MATLAB检查文件的冲突标记,并提供提取冲突标记。MATLAB只检查冲突文件中的冲突标记。

但是,一些未标记为冲突的文件仍然可能包含冲突标记。如果您或其他用户在未删除冲突标记的情况下标记冲突已解决,然后提交文件,就会发生这种情况。如果在未标记为冲突的文件中看到冲突标记,则可以提取冲突标记。

  1. 在“当前文件夹”浏览器中,右键单击该文件,并选择源控制>将冲突标记提取到文件

  2. 在“提取冲突标记到文件”对话框中,保留默认选项,将“我的”文件版本复制到冲突文件上。离开比较提取的文件选中复选框。点击提取

  3. 像往常一样使用比较工具报告继续解决冲突。