From: Nick <oinksocket@letterboxes.org>
To: Marin Atanasov <dnaeon@gmail.com>, git@vger.kernel.org
Subject: Re: Git and cvsimport
Date: Tue, 27 Apr 2010 12:57:28 +0100 [thread overview]
Message-ID: <4BD6D128.7030403@letterboxes.org> (raw)
In-Reply-To: <l2w717f7a3e1004270341lea6cfe2aqdf8d2b490b1ec067@mail.gmail.com>
Marin Atanasov wrote:
> I want to convert CVS repo to a Git one.
If you don't care about incrementally updating the Git repo from the CVS one, I
suggest you don't use git-cvsimport. It can make mistakes in the translation,
especially with large and old repositories. On the other hand, git-cvsimport is
currently the only tool which can incrementally import changes from CVS, i.e.
co-exist with it.
cvs2git is a tool which worked more reliably for me, but it can only make a
one-off conversion. Also, you might need to tidy up the result afterwards -
removing crufty tags, unrelated directories, correcting committer identities,
etc. git-filter-branch may be useful here.
If you do care about co-existing with CVS, I find it gets to be hard work,
especially if your CVS repo has branches you have to follow - so really I'd
suggest you reconsider and only try it if you really have no choice.
In that case you may want to write a wrapper script for
git-cvsimport/exportcommit commands to reduce the complexity of using them.
I've attempted this, and it sort of works for me, but the result is not really
satisfactory, I find it's still liable to break on encountering random things
cvsimport/cvsexportcommit can't handle, and then you need to fix things manually
(although usually this can be done in Git). Ask me if you want to know more.
git-cvssever may be another option, if your CVS users agree, but I've no
experience with it.
My preferred strategy is to persuade my colleagues to abandon CVS entirely.
Cheers,
N
next prev parent reply other threads:[~2010-04-27 12:36 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-26 14:27 Git and cvsimport Marin Atanasov
2010-04-27 7:37 ` Michael J Gruber
2010-04-27 10:41 ` Marin Atanasov
2010-04-27 11:03 ` Michael J Gruber
2010-04-27 11:57 ` Nick [this message]
2010-04-27 11:58 ` Tor Arntsen
2010-04-28 5:27 ` Marin Atanasov Nikolov
2010-04-28 9:19 ` Andreas Schwab
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4BD6D128.7030403@letterboxes.org \
--to=oinksocket@letterboxes.org \
--cc=dnaeon@gmail.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.