[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [ft-devel] problems with CVS->git conversion
From: |
Werner LEMBERG |
Subject: |
Re: [ft-devel] problems with CVS->git conversion |
Date: |
Tue, 03 Mar 2009 15:03:24 +0100 (CET) |
>> > Would it make sense to first convert to GIT then later change the
>> > commit messages there.
>>
>> I tried that, and it doesn't work properly.
>
>
> Ah, can you tell me which problem exactly? I could do the migration
> myself.
First of all, parsecvs is a nice tool, but it is a bit awkward to
compile (Keith has recently applied some fixes to the repository which
I've submitted to him so that it compiles with the git repository
version of git). A freetype2.git repository created with parsecvs is
just 11.8MByte, BTW, and it has proper tags for everything -- in
particular, it has better tagging than the git archive Suzuki-san has
provided for testing (he used a different tool IIRC).
However, regardless of the used conversion tool, some commit messages
are
*** empty log message ***
which isn't very meaningful. I would like to replace them with
something better, depending on the actual changes, of course. As
mentioned in a previous mail,
. git format-patch
. editing commit messages in the *.patch files
. git am --rebasing --whitespace=nowarn *.patch
works fine, however, it loses all tags created by parsecvs.
On the git mailing list some people suggested to use
git fast-export > dump
and edit the `dump' file, then calling
git fast-import
to create a new git repository. Doing this preserves all tags;
unfortunately, the `dump' file is 650MByte large for freetype2.git,
and it doesn't use a diff-like notation -- I find it very hard to
identify the changes.
I want a tool which collects all *,v files from the CVS and converts
them to `extended' patches which preserves tags. After fixing the
commit messages they should be converted to a final git.
Perhaps it's easy to make parsecvs do what I want. I'll examine it
soon.
Werner