Re: (maybe)bug report & issues
Michael Haggerty <[email protected]> Thu, 02 May 2013 08:41:44 +0200
| Newsgroups | gmane.comp.version-control.subversion.cvs2svn.user |
|---|---|
| Message-ID | <[email protected]> |
On 04/30/2013 04:55 PM, Henning Moll wrote:
> Hi,
>
> I have severall problems which i was not able to solve even after heavy documentation reading...
>
> used version: 2.4.0, trunk (no difference)
>
> Issue 1:
>
> if i use 'verify-cvs2svn.py', i get
>
>
> Traceback (most recent call last):
> File "../cvs2svn-2.4.0/contrib/verify-cvs2svn.py", line 672, in <module>
> main(sys.argv)
> File "../cvs2svn-2.4.0/contrib/verify-cvs2svn.py", line 662, in main
> verify_contents(failures, cvsrepos, verifyrepos, options)
> File "../cvs2svn-2.4.0/contrib/verify-cvs2svn.py", line 524, in verify_contents
> failures, cvsrepos, verifyrepos, 'trunk', None, ctx
> File "../cvs2svn-2.4.0/contrib/verify-cvs2svn.py", line 492, in verify_contents_single
> verifyrepos.export_trunk(vrf_export_dir)
> File "../cvs2svn-2.4.0/contrib/verify-cvs2svn.py", line 307, in export_trunk
> self.branches() # ensure _have_default is set
> File "../cvs2svn-2.4.0/contrib/verify-cvs2svn.py", line 328, in branches
> branches = split_output(cmd)
> TypeError: split_output() takes exactly 2 arguments (1 given)
>
> I can fix this by changing the signature of function split_output from (self, cmd) to just (cmd).
>
> Bug?
Yes. Thanks for finding this. I just pushed the fix that you suggested
to trunk.
> Issue 2:
>
> i use
>
> cvs2git --encoding=iso8859_15 --blobfile blob --dumpfile dump --username=cvs2git cvs_path
> ...
>
> to convert to git. If i now run 'verify-cvs2svn.py' with
>
> verify-cvs2svn.py --git --tmpdir=/tmp/git_datatrans_verify/ --diff cvs_path git_path
>
> i get many trivial diffs like
>
> ...
>
> -# $Id: somefile,v 1.4 2002/07/03 06:50:52 scott Exp $
> +# $Id$
> ...
>
> The only way to (partly) fix this is to hardcode
>
> explicit_keyword_handling='expanded'
>
> in file cvs2svn_lib/abstract_rcs_revision_manager.py.
If you have binary files in your repository that might accidentally
contain strings like "$Id$", then making the change that you suggest
will cause those strings to be expanded too, corrupting the file.
The default cvs2svn options are chosen to minimize the chance of
accidental file corruption, even for people who haven't marked their
binary files as binary in CVS. If you are diligent about such things,
then you can probably fix most of these problems by using
"--default-eol=native".
> After this hack, the problem changes to
> ...
>
> -# $Id: somefile,v 1.4 2002/07/03 06:50:52 scott Exp $
> +# $Id: somefile,v 1.4 2002-07-03 06:50:52 scott Exp $
> ...
>
> I fix this by hardcoding
>
> date_fmt = date_fmt_old
>
> in file cvs2svn_lib/keyword_expander.py.
>
> How can i configure this on the commandline?
You seem to be using an old version of CVS, and so the CVS date
expansion is in the old style. If somebody would check out your CVS
repository using a newer version of CVS, they would get the new-style
expansion. So it is possible that you are putting too much importance
on these discrepancies.
But if you insist on getting old-style dates, you can do that via the
options file configuration with something like
from cvs2svn_lib.keyword_expander import _KeywordExpander
_KeywordExpander.use_old_date_format()
Michael
--
Michael Haggerty
[email protected]
http://softwareswirl.blogspot.com/
------------------------------------------------------
http://cvs2svn.tigris.org/ds/viewMessage.do?dsForumId=1670&dsMessageId=3054762
To unsubscribe from this discussion, e-mail: [[email protected]].