richlowe: you're right on both points. The simple version is:
diff --git a/hgext/imerge.py b/hgext/imerge.py
--- a/hgext/imerge.py
+++ b/hgext/imerge.py
@@ -120,7 +120,7 @@
# this could be greatly improved
realmerge = os.environ.get('HGMERGE')
if not interactive:
- os.environ['HGMERGE'] = 'merge'
+ os.environ['HGMERGE'] = 'internal:merge'
# The filemerge ancestor algorithm does not work if self.wctx
# already has two parents (in normal merge it doesn't yet). But
It passes --auto tests. I am not sure what happens if you try to merge symlinks,
but that would be a simplemerge issue and is probably not worse than "merge".
About the --auto stuff, I don't know the original intent and it's not clear to
me that --auto == non-interactive, rather than --auto == try to merge everything
(possibly interactively). The merge tool can already be set with $HGMERGE. IMHO,
the interactive bit should be removed from imerge.filemerge(). |