配置subversion客户端以使用3向冲突标记

时间:2014-02-12 21:38:03

标签: svn

有谁能让我知道如何配置subversion客户端以使用3路冲突标记?生成的冲突文件将显示类似于下面复制的冲突 - 工作部分,merge-left部分和merge-right部分(这样一个人不必引用merge-left.xxx和merge-right.yyy文件) )。我们正在使用subversion 1.6客户端。感谢。

<<<<<< 。工作

||||||| .merge-left.rxxx

=======

>>>>>>> .merge-right.ryyy

1 个答案:

答案 0 :(得分:2)

您必须修改来源。不幸的是,这是硬编码的。但是,你不是第一个要求这个的人。我们应该把它作为配置选项。

subversion / libsvn_wc / merge.c 中找到名为do_text_merge的函数并修改以下调用:

  SVN_ERR(svn_diff_file_output_merge2(ostream, diff,
                                      left, detranslated_target, right,
                                      left_marker,
                                      target_marker,
                                      right_marker,
                                      "=======", /* separator */
                                      svn_diff_conflict_display_modified_latest ,
                                      pool));

您想要更改的内容是svn_diff_conflict_display_modified_latestsvn_diff_conflict_display_modified_original_latest。当然有other potential values documented in our API