Combining several CVS modules into one HG repository
David I.
yigyw4d02 at sneakemail.com
Tue Aug 28 16:31:01 CDT 2007
OK, I think I now understand what you are saying.
If I symlink the original directories to a new parent, the new parent will not have a CVS subdirectory, so it won't be functional from a CVS standpoint (no CVS/Entries in bigmod), but the repository conversion tools can handle it? Is the CVS meta-data not needed for repository conversion (e.g. CVS/Entries, CVS/Repository, CVS/Root, CVS/Tag)? Should I manually write a CVS/Entries, etc for the new "bigmod" root?
Based on your example below:
[initial layout]
/cvs
/cvs/CVSROOT
/cvs/mod1/CVS
/cvs/mod1/CVS/Entries
/cvs/mod1/CVS/Repository
/cvs/mod1/CVS/Root
/cvs/mod1/CVS/Tag
/cvs/mod1/file1.txt
/cvs/mod1/subdir1/
/cvs/mod2/CVS
/cvs/mod2/CVS/Entries
/cvs/mod2/CVS/Repository
/cvs/mod2/CVS/Root
/cvs/mod2/CVS/Tag
/cvs/mod2/file2.txt
/cvs/mod2/subdir2/
where "CVS" subdirectories contain the normal meta-data files such as "Entries", "Root", etc
[new, "bigmod" layout where mod1 & mod2 are symlinks]
/cvs/bigmod/ <<< (no CVS subdir)
/cvs/bigmod/mod1/CVS
/cvs/bigmod/mod1/CVS/Entries
/cvs/bigmod/mod1/CVS/Repository
/cvs/bigmod/mod1/CVS/Root
/cvs/bigmod/mod1/CVS/Tag
/cvs/bigmod/mod1/file1.txt
/cvs/bigmod/mod1/subdir1/
/cvs/bigmod/mod2/CVS
/cvs/bigmod/mod2/CVS/Entries
/cvs/bigmod/mod2/CVS/Repository
/cvs/bigmod/mod2/CVS/Root
/cvs/bigmod/mod2/CVS/Tag
/cvs/bigmod/mod2/file2.txt
/cvs/bigmod/mod2/subdir2/
David
-----Original Message-----
From: Simon 'corecode' Schubert corecode-at-fs.ei.tum.de |Mercurial| [mailto:...]
Sent: Tuesday, August 28, 2007 1:22 PM
To: Ishee, David M
Subject: Re: Combining several CVS modules into one HG repository
David Ishee wrote:
> How does your fromcvs handle branches? I can't find a description anywhere. Do they become named branches inside a single repository?
Yes, they become named branches.
> I currently have a CVS repo like this:
>
> /home/proj/repository
>
> below "repository" I have the CVS modules. The CVSROOT is at the "repository" level.
Is there a question or is this just for illustrating the original one? If so, let me explain in detail:
you have a structure like
/cvs
/cvs/CVSROOT
/cvs/mod1
/cvs/mod2
now you can combine them by creating a directory /cvs/bigmod
and moving/symlinking the original modules there
/cvs/bigmod/mod1
/cvs/bigmod/mod2
> Is it possible to combine two hg repositories once they are created? For example, I convert a module named "proj" and a module "proj_admin" into two separate hg repositories. I combine them into a new top-level directory (somehow), and try to pull out a tag originally created in CVS (the same tag exists on all modules). Could this work?
No, hg repos are single entities. But you can convert the cvs modules together, thus creating one hg repo.
cheers
simon
--
Serve - BSD +++ RENT this banner advert +++ ASCII Ribbon /"\
Work - Mac +++ space for low €€€ NOW!1 +++ Campaign \ /
Party Enjoy Relax | http://dragonflybsd.org Against HTML \
Dude 2c 2 the max ! http://golden-apple.biz Mail + News / \
More information about the Mercurial
mailing list