CVS migration help
Thomas Manson
dev.mansonthomas at gmail.com
Tue Oct 7 16:52:20 BST 2008
Same result with 1.7.0.1.
I've tried with
ctx.cvs_filename_decoder = CVSTextDecoder(
[
#'latin1',
'utf8',
#'ascii',
],
fallback_encoding='latin1'
)
Same result.
Where do I change the encoding of bzr ?
bzr 1.7.1 on python 2.5.2 (linux2)
arguments: ['/usr/bin/bzr', 'fast-import', '-']
*encoding: 'UTF-8', fsenc: 'UTF-8', lang: 'en_US.UTF-8'
*plugins:
On Tue, Oct 7, 2008 at 17:47, Thomas Manson <dev.mansonthomas at gmail.com>wrote:
> in cvs2svn option file :
>
> # You might want to be especially strict when converting filenames to
> # unicode (e.g., maybe not specify a fallback_encoding).
> ctx.cvs_filename_decoder = CVSTextDecoder(
> [
> 'latin1',
> #'utf8',
> #'ascii',
> ],
> fallback_encoding='ascii'
> )
>
> I've added the ppa repositiory for ubuntu apt-get and update to 1.7.0.1and will try again.
> Thomas
>
> On Tue, Oct 7, 2008 at 17:22, Jelmer Vernooij <jelmer at samba.org> wrote:
>
>> Am Dienstag, den 07.10.2008, 17:03 +0200 schrieb Thomas Manson:
>> > Hi Michael,
>> >
>> > I've checkout the trunk version (the version on ubuntu hardy heron
>> > is quite old : 2.0.1)
>> > succeed in cvs2svn conversion,
>> >
>> > unfortunately it crashes in the same way that bzr cvsps-import
>> > does :
>> >
>> >
>> > thomas at home:~/temp/bzr$
>> > cat ../cvs2svn-tmp/git-blob.dat ../cvs2svn-tmp/git-dump.dat | bzr
>> > fast-import -
>> > bzr: ERROR: exceptions.UnicodeDecodeError: 'utf8' codec can't decode
>> > bytes in position 43-45: invalid data
>> The problem seems to be that one of the characters in your CVS
>> repository is not valid as UTF8 character. Did you specify the locale in
>> which the filenames are encoded explicitly somehow?
>>
>> Git does not have this problem, since it does not interpret any of the
>> filenames you store in it. This has advantages (conversion can't fail
>> since you're not doing conversion at at all), but it also has
>> disadvantages - checking out the repository on hosts with a different
>> encoding breaks the filenames.
>>
>> Cheers,
>>
>> Jelmer
>>
>> > Traceback (most recent call last):
>> > File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line
>> > 834, in run_bzr_catch_errors
>> > return run_bzr(argv)
>> > File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line
>> > 790, in run_bzr
>> > ret = run(*run_argv)
>> > File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line
>> > 492, in run_argv_aliases
>> > return self.run(**all_cmd_args)
>> > File "/home/thomas/.bazaar/plugins/fastimport/__init__.py", line
>> > 199, in run
>> > params, verbose)
>> > File "/home/thomas/.bazaar/plugins/fastimport/__init__.py", line 77,
>> > in _run
>> > return proc.process(p.iter_commands)
>> > File "/home/thomas/.bazaar/plugins/fastimport/processor.py", line
>> > 83, in process
>> > self._process(command_iter)
>> > File
>> >
>> "/home/thomas/.bazaar/plugins/fastimport/processors/generic_processor.py",
>> line 317, in _process
>> > processor.ImportProcessor._process(self, command_iter)
>> > File "/home/thomas/.bazaar/plugins/fastimport/processor.py", line
>> > 105, in _process
>> > handler(self, cmd)
>> > File
>> >
>> "/home/thomas/.bazaar/plugins/fastimport/processors/generic_processor.py",
>> line 486, in commit_handler
>> > handler.process()
>> > File "/home/thomas/.bazaar/plugins/fastimport/processor.py", line
>> > 164, in process
>> > for fc in self.command.file_iter():
>> > File "/home/thomas/.bazaar/plugins/fastimport/parser.py", line 312,
>> > in iter_file_commands
>> > yield self._parse_file_modify(line[2:])
>> > File "/home/thomas/.bazaar/plugins/fastimport/parser.py", line 365,
>> > in _parse_file_modify
>> > path = self._path(params[2])
>> > File "/home/thomas/.bazaar/plugins/fastimport/parser.py", line 493,
>> > in _path
>> > return s.decode('utf_8')
>> > File "/usr/lib/python2.5/encodings/utf_8.py", line 16, in decode
>> > return codecs.utf_8_decode(input, errors, True)
>> > UnicodeDecodeError: 'utf8' codec can't decode bytes in position 43-45:
>> > invalid data
>> > bzr 1.3.1 on python 2.5.2.final.0 (linux2)
>> > arguments: ['/usr/bin/bzr', 'fast-import', '-']
>> > encoding: 'UTF-8', fsenc: 'UTF-8', lang: 'en_US.UTF-8'
>> > plugins:
>> >
>> > bzrtools
>> /usr/lib/python2.5/site-packages/bzrlib/plugins/bzrtools [1.3.0]
>> > cvsps_import /home/thomas/.bazaar/plugins/cvsps_import
>> > [unknown]
>> > fastimport /home/thomas/.bazaar/plugins/fastimport
>> > [unknown]
>> >
>> > launchpad
>> /usr/lib/python2.5/site-packages/bzrlib/plugins/launchpad [unknown]
>> > *** Bazaar has encountered an internal error.
>> > Please report a bug at https://bugs.launchpad.net/bzr/+filebug
>> > including this traceback, and a description of what you
>> > were doing when the error occurred.
>> >
>> >
>> > I don't think it's related to cvs2svn or cvsps as it fails in both
>> > cases.
>> > It should be a bzr bug.
>> >
>> > I've successfully converted my project to git repository format with
>> > these set of command :
>> >
>> > export CVSROOT=/home/thomas/temp/cvs2git/cvs/files
>> >
>> > git cvsimport -C /home/thomas/temp/cvs2gitOutput/crf-irp
>> > crf-irp
>> > git cvsimport -C /home/thomas/temp/cvs2gitOutput/crf-irp-model
>> > crf-irp-model
>> > git cvsimport -C /home/thomas/temp/cvs2gitOutput/crf-irp-monitor
>> > crf-irp-monitor
>> > git cvsimport -C /home/thomas/temp/cvs2gitOutput/crf-irp-portail
>> > crf-irp-portail
>> > git cvsimport -C /home/thomas/temp/cvs2gitOutput/crf-irp-utilities
>> > crf-irp-utilities
>> >
>> >
>> > Is it possible to convert the git version of my sources to bzr ? maybe
>> > it would be successfull.
>> >
>> >
>> > Thomas.
>> >
>> >
>> >
>> >
>> > On Tue, Oct 7, 2008 at 12:41, Michael Haggerty <mhagger at alum.mit.edu>
>> > wrote:
>> > Jelmer Vernooij wrote:
>> > > Am Dienstag, den 07.10.2008, 00:01 +0200 schrieb Thomas
>> > Manson:
>> > >> I've look to it... but didn't tryed yet...
>> > >>
>> > >> It really misses straightforward howto (for all tools
>> > except bzr
>> > >> cvsimport)
>> > > cvsps-import should be the best solution here, we should
>> > just fixing
>> > > that imho. What's blocking you from using it?
>> >
>> >
>> > No conversion tool that is based on cvsps will be able to do a
>> > truly
>> > reliable job of migrating from CVS. cvsps, which was written
>> > for
>> > another purpose, simply is not robust enough and does not emit
>> > enough
>> > information for a complete conversion. I gave many concrete
>> > examples of
>> > its shortcomings on the Mercurial mailing list [1].
>> >
>> > Deducing a project's history from CVS's incomplete records is
>> > a very
>> > tricky thing; cvs2svn's feature list [2] will give you an idea
>> > of the
>> > kinds of things an industrial-strength converter needs to
>> > handle.
>> > cvs2svn deduces the CVS changesets itself, using a much more
>> > robust
>> > algorithm than that used by cvsps. (The main disadvantage of
>> > cvs2svn is
>> > that it can only be used for one-time conversions, not for
>> > tracking a
>> > live CVS repository incrementally.)
>> >
>> > cvs2svn/cvs2git can create output in git-fast-import format
>> > [3], which
>> > should also be readable by the bzr fast-import tool. It
>> > hasn't gotten
>> > much testing in "cvs2bzr" mode, but given that 90% of the job
>> > is
>> > inferring CVS's history, it should not be too much work to fix
>> > any
>> > problems in the "2bzr" part. Therefore, any feedback would be
>> > much
>> > appreciated.
>> >
>> > (By the way, if you want to use cvs2svn to convert to bzr, I
>> > suggest
>> > that you use the trunk version of cvs2svn, which has several
>> > improvements compared to release 2.1.1.)
>> >
>> > Michael
>> >
>> > [1]
>> >
>> http://selenic.com/pipermail/mercurial-devel/2008-February/004975.html
>> >
>> > [2] http://cvs2svn.tigris.org/features.html
>> >
>> > [3] http://cvs2svn.tigris.org/cvs2git.html
>> >
>>
>> --
>> Jelmer Vernooij <jelmer at samba.org> - http://samba.org/~jelmer/
>> Jabber: jelmer at jabber.fsfe.org
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.ubuntu.com/archives/bazaar/attachments/20081007/d738b9f0/attachment.htm
More information about the bazaar
mailing list