mirror of
https://github.com/facebook/sapling.git
synced 2024-10-07 23:38:50 +03:00
filemerge: show warning about choice of :prompt only at an actual fallback
Before this patch, internal merge tool :prompt shows "no tool found to merge FILE" line, even if :prompt is explicitly specified as a tool to be used. This patch shows warning message about choice of :prompt only at an actual fallback, in which case any tool is rejected by capability for binary or symlink. It is for backward compatibility to omit warning message in "changedelete" case.
This commit is contained in:
parent
941307e87c
commit
3018e1b77b
@ -209,6 +209,9 @@ def _picktool(repo, ui, path, binary, symlink, changedelete):
|
||||
|
||||
# internal merge or prompt as last resort
|
||||
if symlink or binary or changedelete:
|
||||
if not changedelete and len(tools):
|
||||
# any tool is rejected by capability for symlink or binary
|
||||
ui.warn(_("no tool found to merge %s\n") % path)
|
||||
return ":prompt", None
|
||||
return ":merge", None
|
||||
|
||||
@ -260,8 +263,8 @@ def _iprompt(repo, mynode, orig, fcd, fco, fca, toolconf, labels=None):
|
||||
choice = ['other', 'local', 'unresolved'][index]
|
||||
else:
|
||||
index = ui.promptchoice(
|
||||
_("no tool found to merge %(fd)s\n"
|
||||
"keep (l)ocal%(l)s, take (o)ther%(o)s, or leave (u)nresolved?"
|
||||
_("keep (l)ocal%(l)s, take (o)ther%(o)s, or leave (u)nresolved"
|
||||
" for %(fd)s?"
|
||||
"$$ &Local $$ &Other $$ &Unresolved") % prompts, 2)
|
||||
choice = ['local', 'other', 'unresolved'][index]
|
||||
|
||||
|
@ -470,8 +470,7 @@ Force prompts with no input (should be similar to :fail)
|
||||
use (c)hanged version, (d)elete, or leave (u)nresolved?
|
||||
other [merge rev] changed file2 which local [working copy] deleted
|
||||
use (c)hanged version, leave (d)eleted, or leave (u)nresolved?
|
||||
no tool found to merge file3
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved?
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for file3?
|
||||
0 files updated, 0 files merged, 0 files removed, 3 files unresolved
|
||||
use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
|
||||
[1]
|
||||
@ -529,8 +528,7 @@ Force prompts
|
||||
use (c)hanged version, (d)elete, or leave (u)nresolved? u
|
||||
other [merge rev] changed file2 which local [working copy] deleted
|
||||
use (c)hanged version, leave (d)eleted, or leave (u)nresolved? u
|
||||
no tool found to merge file3
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved? u
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for file3? u
|
||||
0 files updated, 0 files merged, 0 files removed, 3 files unresolved
|
||||
use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
|
||||
[1]
|
||||
@ -676,8 +674,7 @@ invocations.)
|
||||
use (c)hanged version, (d)elete, or leave (u)nresolved?
|
||||
other [merge rev] changed file2 which local [working copy] deleted
|
||||
use (c)hanged version, leave (d)eleted, or leave (u)nresolved?
|
||||
no tool found to merge file3
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved?
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for file3?
|
||||
--- diff of status ---
|
||||
(status identical)
|
||||
|
||||
@ -705,8 +702,7 @@ invocations.)
|
||||
use (c)hanged version, (d)elete, or leave (u)nresolved?
|
||||
other [merge rev] changed file2 which local [working copy] deleted
|
||||
use (c)hanged version, leave (d)eleted, or leave (u)nresolved?
|
||||
no tool found to merge file3
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved?
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for file3?
|
||||
--- diff of status ---
|
||||
(status identical)
|
||||
|
||||
@ -724,8 +720,7 @@ invocations.)
|
||||
use (c)hanged version, (d)elete, or leave (u)nresolved?
|
||||
other [merge rev] changed file2 which local [working copy] deleted
|
||||
use (c)hanged version, leave (d)eleted, or leave (u)nresolved?
|
||||
no tool found to merge file3
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved?
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for file3?
|
||||
--- diff of status ---
|
||||
(status identical)
|
||||
|
||||
|
@ -531,8 +531,7 @@ ui.merge specifies internal:prompt:
|
||||
true.executable=cat
|
||||
# hg update -C 1
|
||||
$ hg merge -r 2 --config ui.merge=internal:prompt
|
||||
no tool found to merge f
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved? u
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u
|
||||
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
|
||||
use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
|
||||
[1]
|
||||
@ -556,8 +555,7 @@ ui.merge specifies :prompt, with 'leave unresolved' chosen
|
||||
$ hg merge -r 2 --config ui.merge=:prompt --config ui.interactive=True << EOF
|
||||
> u
|
||||
> EOF
|
||||
no tool found to merge f
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved? u
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u
|
||||
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
|
||||
use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
|
||||
[1]
|
||||
@ -579,8 +577,7 @@ prompt with EOF
|
||||
true.executable=cat
|
||||
# hg update -C 1
|
||||
$ hg merge -r 2 --config ui.merge=internal:prompt --config ui.interactive=true
|
||||
no tool found to merge f
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved?
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f?
|
||||
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
|
||||
use 'hg resolve' to retry unresolved file merges or 'hg update -C .' to abandon
|
||||
[1]
|
||||
@ -593,8 +590,7 @@ prompt with EOF
|
||||
# hg resolve --list
|
||||
U f
|
||||
$ hg resolve --all --config ui.merge=internal:prompt --config ui.interactive=true
|
||||
no tool found to merge f
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved?
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f?
|
||||
[1]
|
||||
$ aftermerge
|
||||
# cat f
|
||||
@ -607,8 +603,7 @@ prompt with EOF
|
||||
U f
|
||||
$ rm f
|
||||
$ hg resolve --all --config ui.merge=internal:prompt --config ui.interactive=true
|
||||
no tool found to merge f
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved?
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f?
|
||||
[1]
|
||||
$ aftermerge
|
||||
# cat f
|
||||
@ -619,8 +614,7 @@ prompt with EOF
|
||||
# hg resolve --list
|
||||
U f
|
||||
$ hg resolve --all --config ui.merge=internal:prompt
|
||||
no tool found to merge f
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved? u
|
||||
keep (l)ocal [working copy], take (o)ther [merge rev], or leave (u)nresolved for f? u
|
||||
[1]
|
||||
$ aftermerge
|
||||
# cat f
|
||||
|
@ -171,9 +171,9 @@ Update to link with local change should cause a merge prompt (issue3200):
|
||||
preserving a for resolve of a
|
||||
a: versions differ -> m (premerge)
|
||||
(couldn't find merge tool hgmerge|tool hgmerge can't handle symlinks) (re)
|
||||
picked tool ':prompt' for a (binary False symlink True changedelete False)
|
||||
no tool found to merge a
|
||||
keep (l)ocal [working copy], take (o)ther [destination], or leave (u)nresolved? u
|
||||
picked tool ':prompt' for a (binary False symlink True changedelete False)
|
||||
keep (l)ocal [working copy], take (o)ther [destination], or leave (u)nresolved for a? u
|
||||
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
|
||||
use 'hg resolve' to retry unresolved file merges
|
||||
1 other heads for branch "default"
|
||||
|
Loading…
Reference in New Issue
Block a user