📄 diff-diff3-test.c
字号:
"Gg\n"
"Hh\n"
"Ii\n",
"Aa\n"
"Bb\n"
"Cc\n"
"Dd\n"
"Ee\n"
"Xx\n"
"Yy\n"
"Ff\n"
"Gg\n"
"Hh\n"
"Ii\n",
"--- foo15b" APR_EOL_STR
"+++ bar15b" APR_EOL_STR
"@@ -3,6 +3,8 @@" APR_EOL_STR
" Cc\n"
" Dd\n"
" Ee\n"
"+Xx\n"
"+Yy\n"
" Ff\n"
" Gg\n"
" Hh\n",
pool));
SVN_ERR (two_way_diff ("foo15c", "bar15c",
"Aa\n"
"Bb\n"
"Cc\n"
"Dd\n"
"Ee\n"
"Ff\n"
"Gg\n"
"Hh\n"
"Ii\n",
"Aa\n"
"Bb\n"
"Cc\n"
"Dd\n"
"Xx\n"
"Yy\n"
"Ff\n"
"Gg\n"
"Hh\n"
"Ii\n",
"--- foo15c" APR_EOL_STR
"+++ bar15c" APR_EOL_STR
"@@ -2,7 +2,8 @@" APR_EOL_STR
" Bb\n"
" Cc\n"
" Dd\n"
"-Ee\n"
"+Xx\n"
"+Yy\n"
" Ff\n"
" Gg\n"
" Hh\n",
pool));
return SVN_NO_ERROR;
}
static svn_error_t *
test_three_way_merge_no_overlap (const char **msg,
svn_boolean_t msg_only,
apr_pool_t *pool)
{
*msg = "3-way merge, non-overlapping changes";
if (msg_only)
return SVN_NO_ERROR;
SVN_ERR (three_way_merge ("zig1", "zag1", "zog1",
"Aa\n"
"Bb\n"
"Cc\n",
"Xx\n"
"Aa\n"
"Bb\n"
"Cc\n",
"Aa\n"
"Bb\n"
"Cc\n"
"Yy\n",
"Xx\n"
"Aa\n"
"Bb\n"
"Cc\n"
"Yy\n",
pool));
SVN_ERR (three_way_merge ("zig2", "zag2", "zog2",
"Aa\n"
"Bb\n"
"Cc\n",
"Xx\n"
"Aa\n"
"Bb\n"
"Cc\n"
"Yy\n",
"Aa\n"
"Bb\n"
"Zz\n"
"Cc\n",
"Xx\n"
"Aa\n"
"Bb\n"
"Zz\n"
"Cc\n"
"Yy\n",
pool));
SVN_ERR (three_way_merge ("zig3a", "zag3a", "zog3a",
"Aa\n"
"Bb\n"
"Cc\n",
"Aa\n"
"Bb\n"
"Cc",
"Xx\n"
"Bb\n"
"Cc\n",
"Xx\n"
"Bb\n"
"Cc",
pool));
SVN_ERR (three_way_merge ("zig3b", "zag3b", "zog3b",
"Aa\n"
"Bb\n"
"Cc\n",
"Xx\n"
"Bb\n"
"Cc\n",
"Aa\n"
"Bb\n"
"Cc",
"Xx\n"
"Bb\n"
"Cc",
pool));
SVN_ERR (three_way_merge ("zig4", "zag4", "zog4",
"Aa\n"
"Bb\n"
"Cc\n"
"Dd\n"
"Ee\n"
"Ff\n"
"Gg\n"
"Hh\n"
"Ii\n",
"Aa\n"
"Bb\n"
"Cc\n"
"Dd\n"
"Ee\n"
"Ff\n"
"Yy\n"
"Zz\n"
"Hh\n"
"Ii\n",
"Bb\n"
"Cc\n"
"Dd\n"
"Ee\n"
"Ff\n"
"Gg\n"
"Hh\n"
"Ii\n",
"Bb\n"
"Cc\n"
"Dd\n"
"Ee\n"
"Ff\n"
"Yy\n"
"Zz\n"
"Hh\n"
"Ii\n",
pool));
SVN_ERR (three_way_merge ("zig5", "zag5", "zog5",
"Aa\r\n"
"Bb\n"
"Cc\n",
"Xx\r\n"
"Aa\r\n"
"Bb\n"
"Cc\n",
"Aa\r\n"
"Bb\n"
"Cc\n"
"Yy\r\n",
"Xx\r\n"
"Aa\r\n"
"Bb\n"
"Cc\n"
"Yy\r\n",
pool));
SVN_ERR (three_way_merge ("zig6", "zag6", "zog6",
"AaAaAaAaAaAa\n"
"Bb\n"
"Cc\n",
"Xx\n"
"Bb\n"
"Cc\n",
"AaAaAaAaAaAa\n"
"Bb\n"
"CcCcCcCcCcCc\n"
"Yy\n",
"Xx\n"
"Bb\n"
"CcCcCcCcCcCc\n"
"Yy\n",
pool));
SVN_ERR (three_way_merge ("zig7", "zag7", "zog7",
"Aa\n"
"Bb\n"
"Cc\n",
"Aa\n"
"Bb\n"
"Cc\n"
"Dd",
"Aa\n"
"Bb\n"
"Cc\n",
"Aa\n"
"Bb\n"
"Cc\n"
"Dd",
pool));
return SVN_NO_ERROR;
}
static svn_error_t *
test_three_way_merge_with_overlap (const char **msg,
svn_boolean_t msg_only,
apr_pool_t *pool)
{
*msg = "3-way merge, non-conflicting overlapping changes";
if (msg_only)
return SVN_NO_ERROR;
SVN_ERR (three_way_merge ("splish1", "splash1", "splosh1",
"Aa\n"
"Bb\n"
"Cc\n"
"Dd\n"
"Ee\n",
"Aa\n"
"Xx\n"
"Bb\n"
"Cc\n"
"Yy\n"
"Ee\n",
"Aa\n"
"Bb\n"
"Cc\n"
"Yy\n"
"Ee\n"
"Zz\n",
"Aa\n"
"Xx\n"
"Bb\n"
"Cc\n"
"Yy\n"
"Ee\n"
"Zz\n",
pool));
SVN_ERR (three_way_merge ("splish2", "splash2", "splosh2",
"Aa\n"
"Bb\n"
"Cc\n"
"Dd\n"
"Ee\n"
"Ff\n",
"Aa\n"
"Yy\n"
"Zz\n"
"Dd\n"
"Pp\n"
"Qq\n"
"Ff\n",
"Pp\n"
"Qq\n"
"Aa\n"
"Bb\n"
"Cc\n"
"Dd\n"
"Pp\n"
"Qq\n"
"Ff\n"
"Pp\n"
"Qq\n",
"Pp\n"
"Qq\n"
"Aa\n"
"Yy\n"
"Zz\n"
"Dd\n"
"Pp\n"
"Qq\n"
"Ff\n"
"Pp\n"
"Qq\n",
pool));
SVN_ERR (three_way_merge ("splish3", "splash3", "splosh3",
"Aa\n"
"Bb\n"
"Cc\n",
"Xx\n"
"Aa\n"
"Bb\n"
"Cc",
"Aa\n"
"Xx\n"
"Bb\n"
"Cc",
"Xx\n"
"Aa\n"
"Xx\n"
"Bb\n"
"Cc",
pool));
SVN_ERR (three_way_merge ("splish4", "splash4", "splosh4",
"Aa\n"
"Bb\n"
"Cc\n"
"Dd\n"
"Ee\n"
"Ff\n"
"Gg\n"
"Hh\n",
"Aa\n"
"Ff\n"
"Gg\n"
"Hh\n"
"Bb\n"
"Cc\n"
"Xx\n"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -