Jeremy Barnes wrote:
Hi,

I recently downloaded Tailor to convert a very large (~2 million lines of code
with 6 years of revision history and about 100,000 discrete CVS patches)
CVS repository to Mercurial.  I used the cvs backend for cvs and the hg
backend for mercurial.  It was tailor version 0.9.22.

Firstly, thanks for an excellent tool!

Thank you!

I had a couple of small problems with number 1:
- There is a copy-and-paste typo in the mercurial backend:
diff -r tailor-0.9.22/vcpx/hg.py ../tailor-0.9.22/vcpx/hg.py
20c20
< class HglibWorkingDir(UpdatableSourceWorkingDir, 
SyncronizableTargetWorkingDir):
---
class HgWorkingDir(UpdatableSourceWorkingDir, SyncronizableTargetWorkingDir):

This was already fixed in current code.

- We happen to have a bunch of $Id:$-type tags in our CVS repository for which
    there are a lot of commits in the repository.  If we try to merge changes
    between the version on the branch and the HEAD, then we get mostly spurious
    conflicts (files that changed in both, and can be merged, except for the ID 
field).
    To avoid this, I added the "-kk" flag to the CVS update and checkout 
commands,
    which normalizes these fields:

Ok, I added a new setting for CVS backends ("freeze-keywords") that does just that.

- CVS wants to make sure that the second changes before it exits (which means only one operation per second, which is frustrating with a hundred thousand CVS changesets). To avoid this, I rsync'd a new copy of the repository (so that there was no possibility of corruption) and then
    modified CVS to not at the end.

I'm not sure what this mean: I see you modified CVS source, but it's not clear what the impact on tailor is. Could you please write down a note for the README or the wiki?

I had more problems with number 2:
- I had accidentally put a "/" on the end of the CVS module name, which meant the first character of the path was truncated (eg, I got "pplications/main.cc" instead of "applications/main.cc". I fixed this by removing the "/", but it would be good to put this in the doco or (preferably) check for it and remove it.

Done.

- CVS has a bugs with the rlog command when using -r:branch syntax, which leads to changesets on the wrong branch being listed in the log. For example:

Applied.

I hope to cut a 0.9.23 later this afternoon.

Again, thanks a lot for your kind words and bug hunting&fixing!

ciao, lele.
_______________________________________________
Tailor mailing list
[email protected]
http://lists.zooko.com/mailman/listinfo/tailor

Reply via email to