[SVNMERGE][PATCH] svnmerge rollback
Madan U Sreenivasan
madan at collab.net
Fri May 19 09:11:03 PDT 2006
On Fri, 19 May 2006 18:41:33 +0530, Giovanni Bajo <rasky at develer.com>
wrote:
> Madan U Sreenivasan wrote:
>
>>>>> + oldest_src_rev =
>>> get_created_rev(opts["head-url"])
>>>>> + src_pre_exist_range =
>>> RevisionSet("1-%d" % oldest_src_rev)
>>> Is this test really necessary? Doesn't the
>>> merge command just fail if you
>>> try reverting a revision at which the URL
>>> did not exist?
>>
>> yes, it does... but wouldnt it make sense to say the rollback command
>> failed instead of letting the user see a merge failure? Much more
>> cleaner, I think.
>
> What happens, exactly, if you remove that test? What's the actual output?
======================================================================
ERROR: `svnmerge rollback' should error out if range contains revisions
prior to
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/madan/wc/svnmerge/contrib/client-side/svnmerge_test.py",
line 771, in testRollbackOutsidePossibleRange
match = expected_error)
File "/home/madan/wc/svnmerge/contrib/client-side/svnmerge_test.py",
line 180, in svnmerge
return self.svnmerge2(cmds.split(), *args, **kwargs)
File "/home/madan/wc/svnmerge/contrib/client-side/svnmerge_test.py",
line 191, in svnmerge2
ret = svnmerge.main(args)
File "/home/madan/wc/svnmerge/contrib/client-side/svnmerge.py", line
1849, in main
cmd(branch_dir, branch_props)
File "/home/madan/wc/svnmerge/contrib/client-side/svnmerge.py", line
1364, in __call__
return self.func(*args, **kwargs)
File "/home/madan/wc/svnmerge/contrib/client-side/svnmerge.py", line
1265, in action_rollback
svn_command("merge -r %d:%d %s %s" % \
File "/home/madan/wc/svnmerge/contrib/client-side/svnmerge.py", line
246, in svn_command
split_lines=False)
File "/home/madan/wc/svnmerge/contrib/client-side/svnmerge.py", line
240, in launchsvn
return launch(cmd, **kwargs)
File "/home/madan/wc/svnmerge/contrib/client-side/svnmerge.py", line
231, in launch
raise LaunchError(ret, cmd, out)
LaunchError: (1, 'svn merge -r 13:1 file:///tmp/__svnmerge_test/repo/trunk
.', "svn: The location for 'file:///tmp/__svnmerge_test/repo/trunk' for
revision 1 does not exist in the repository or refers to an unrelated
object\n")
The last line gives the 'svn merge' error....
Regards,
Madan.
More information about the Svnmerge
mailing list