[svk-devel] svk resolver: obscure error, and obscure documentation
Mark Eichin
eichin at metacarta.com
Tue Feb 12 18:38:06 EST 2008
(svk 2.0.2, debian lenny)
Trying to see if the a "real" smerge worked in a case where --check-only
failed (yeah, grasping at straws) I tried
$ yes s | svk smerge ...
and got:
e)dit, d)iff, m)erge, s)kip, t)heirs, y)ours, h)elp? [e] Unable to read terminal settings in GetControlChars at /usr/share/perl5/SVK/Util.pm line 195.
(which is just obscure, and non-unixy.)
Jesse then pointed out SVKRESOLVE, in svk help environment:
> $SVKRESOLVE
>
> If you set this variable, svk's interactive resolver will always
> perform the command it's set to. For more details about the
> commands available in svk's interactive resolver, type perldoc
> SVK::Resolve.
Several documentation points:
* help env should probably be *organized* into categories; some of
them are only of use when debugging svk failures, some of them are
common settings. (Of course, the *real* problem is that a bunch
of them shouldn't be environment variables at all, but command
line options...)
* nothing hints that the prompt above is the "interactive resolver";
there's just a disconnect there (that is, I'd read help env, and
it never occurred to me that it applied to the problem)
* I guessed that SVKRESOLVE=s would work, but that was just a guess
* the first sentence needs to be taken out and shot:
-- what else are you going to do with a variable other than set it
-- "it" has a confusing antecedent
First cut alternative:
$SVKRESOLVE
Always handle conflicts this way (ie. SVKRESOLVE=skip) rather
than prompting. See also "perldoc SVK::Resolve".
More information about the svk-devel
mailing list