#75: tailor fails to replay one change set during librtorrent svn->monotone
mirroring
---------------------+------------------------------------------------------
Reporter: wilx | Owner: rghetta
Type: defect | Status: new
Priority: major | Milestone: VersionOne
Component: tailor | Version: 0.9
Resolution: | Keywords:
---------------------+------------------------------------------------------
Comment (by lele):
The problem is simple: you cannot do {{{"mv a b; svn move a b"}}}, because
svn
'''wants''' to do that itself. BTW, any brave svn 1.4 early user to
confirm that (cannot)
happens under the just released new version?
So, tailor tries to restore the old name
just before spawning {{{svn mv}}}. This fails when upstream "reorganize"
their sources, for example doing
{{{
$ darcs mv tests/README ./README.tests
$ darcs mv tests src/tests
}}}
Tailor clearly should restore the dirname first, and these may be
tricky... but maybe under DisjunctWorkingDirectories it may be easy:
In that modality, tailor does a `rsync` between the two directories: why
not perform a double pass: replay the changeset twice, one before, and
one after the `rsync`?
Exposing the idea on IRC, _keturns sparkled an better idea: in the
scenario,
a second pass isn't effectively needed: the `README` could be actually
tweaked a little, to adjust its text with the new location of the tests,
ok, and the rsync will take care of that, updating the moved copy...
so the final "svn commit" should recognize that automatically...
This is so simple I simply cannot resist :)
Do you see any case for a second pass, or any other glitch in the idea?
--
Ticket URL: <http://progetti.arstecnica.it/tailor/ticket/75#comment:4>
Tailor <http://progetti.arstecnica.it/tailor>
An inter-VCs changeset exchanger_______________________________________________
Tailor mailing list
[email protected]
http://lists.zooko.com/mailman/listinfo/tailor