##// END OF EJS Templates
merge: allow smarter tool configuration...
merge: allow smarter tool configuration Add [merge-tool] hgrc section with: <tool>.executable = name or path (<tool>) <tool>.args = args with $local/base/other/output ($local $base $other) <tool>.priority = priority (default 0) <tool>.binary = handles binary (False) <tool>.symlink = handles symlinks (False) <tool>.checkconflict = check for conflict markers (False) <tool>.premerge = try internal simplemerge (True if not binary or symlink) Four built-in tools: internal:{merge,local,other,fail} Add [merge-patterns] section of the form: <pattern> = <tool> Priority of settings is: HGMERGE merge-patterns ui:merge merge-tools by priority hgmerge, if it can be found Changes: unsuccessful merges leave .orig files

File last commit:

r6004:5af5f0f9 default
r6004:5af5f0f9 default
Show More
test-double-merge.out
30 lines | 882 B | text/plain | TextLexer
/ tests / test-double-merge.out
resolving manifests
overwrite None partial False
ancestor 310fd17130da local 2092631ce82b+ remote 7731dad1c2b9
searching for copies back to rev 1
unmatched files in other:
bar
all copies found (* = to merge, ! = divergent):
bar -> foo *
checking for directory renames
foo: versions differ -> m
foo: remote copied to bar -> m
copying foo to bar
picked tool 'internal:merge' for foo (binary False symlink False)
merging foo and bar
my foo@2092631ce82b+ other bar@7731dad1c2b9 ancestor foo@310fd17130da
premerge successful
picked tool 'internal:merge' for foo (binary False symlink False)
merging foo
my foo@2092631ce82b+ other foo@7731dad1c2b9 ancestor foo@310fd17130da
premerge successful
0 files updated, 2 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
-- foo --
line 0
line 1
line 2-1
-- bar --
line 0
line 1
line 2-2