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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).