From: Marin Atanasov Nikolov <dnaeon@gmail.com>
To: Tor Arntsen <tor@spacetec.no>
Cc: Michael J Gruber <git@drmicha.warpmail.net>, git@vger.kernel.org
Subject: Re: Git and cvsimport
Date: Wed, 28 Apr 2010 08:27:28 +0300 [thread overview]
Message-ID: <k2r717f7a3e1004272227g256c42fei6951180db855ad9f@mail.gmail.com> (raw)
In-Reply-To: <r2xd2d39d861004270458v2e1cb73by78f53d71103b47e6@mail.gmail.com>
Hello,
On Tue, Apr 27, 2010 at 2:58 PM, Tor Arntsen <tor@spacetec.no> wrote:
> On Tue, Apr 27, 2010 at 12:41, Marin Atanasov <dnaeon@gmail.com> wrote:
>
>> Perhaps I didn't explain better what I want to accomplish :)
>>
>> I want to convert CVS repo to a Git one.
>
> But the above statement..
> [..]
>> What I want to do is to checkout from CVS the files which are tagged
>> RELEASE_1_0 for example, and then import the files to a Git repo.
>> Files tagged as RELEASE_1_0 differ from HEAD files, so I want only
>> those files with that tag for example.
>
> .. seems to be in conflict with the above paragraph. Files tagged with
> RELEASE_1_0 sounds like a revision tag (i.e. not a branch). If you
> want to checkout that snapshot and insert into a Git rep you could as
> well just 'cvs export -r RELEASE_1_0 <module>; git init; git add .;
> git commit'
> but that obviously won't give you any CVS history in the Git repo.
>
Yes, I could do that, but then I'll lose the history, which is the worst case.
The import will be a one-time action. Once we import everything from
CVS to Git, we don't use CVS anymore, so no need of incremental
imports.
> Is RELEASE_1_0 instead a branch tag? I.e. a CVS branch?
RELEASE_1_0 is just a CVS tag you create using `cvs tag <tag-name> <file>`.
The CVS repo does not contain any branches at all.
We have a lot of test and production systems, where production systems
fetch from a central repository the files tagged as STABLE, and test
systems fetch the files tagged as TEST.
Another workaround that I'm thinking of might be:
1. git-cvsimport the whole CVS repository.
2. create a new bare repo, and fetch the files previously imported by
git-cvsimport to master branch - that way we'll have all the history
we need in the master branch.
3. checkout from CVS files tagged as STABLE, TEST, etc... to a new
repo, and then add, commit them to a git repo.
4. fetch again the repo in point 3. to the bare repo from point 2.,
in the specified branch -> TEST, STABLE, etc..
5. I won't have the history in the STABLE, TEST, etc.. branches, but
I'll have it in the master branch then.
6. From later on we'll be using after all the TEST, STABLE, etc.
branches, so master will be kept untouched.
7. On the central repository we'll just clone the already created
bare repo that contains the master, TEST, STABLE, etc.. branches, and
we'll set it to track TEST, STABLE, etc. for example.
What do you think about this? Is it a good approach at all?
Regards,
Marin
>
> -Tor
>
--
Marin Atanasov Nikolov
dnaeon AT gmail DOT com
daemon AT unix-heaven DOT org
next prev parent reply other threads:[~2010-04-28 5:27 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
2010-04-27 11:58 ` Tor Arntsen
2010-04-28 5:27 ` Marin Atanasov Nikolov [this message]
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=k2r717f7a3e1004272227g256c42fei6951180db855ad9f@mail.gmail.com \
--to=dnaeon@gmail.com \
--cc=git@drmicha.warpmail.net \
--cc=git@vger.kernel.org \
--cc=tor@spacetec.no \
/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).