Li Chou <[EMAIL PROTECTED]> wrote:

> Hi, I tried to figure out a single step of check out a project that
> contains modules from different branches of different project.

> For example, Project X has 3 modules, A and B which are from other
> projects.   I need to check out module A's of Project Y branch_2.5,
> and module B of Project Z's main trunk.  If they both were in the
> main trunk, I know I could add "X C &A &B" in modules file.  Now
> how do I check out them both at the same time?  is it possible?
> Thanks

Would a two-step process work for you ?  Recently I've been thinking
about a "wrapper" project.  Something that would work thus:

    $ cvs checkout X-wrapper
    U X-wrapper/README
    U X-wrapper/checkout.sh

and the README file would say:
    Run "sh checkout.sh" to get the rest of the tree.  Bye.

The checkout.sh script would contain these commands,
    cvs checkout C
    cvs checkout -r branch_2-5 A
    cvs checkout B

and by running it you would get the correct revision of
each subtree.  The script is rev-controlled, so it can track
changes in branch tags when subprojects get merged to
their trunks.

I guess this sort of thing (programmability) comes more
naturally in *nix.  Bah, even Windows lets you write
a checkout.bat, so it will work there too.

-- 
pa at panix dot com
_______________________________________________
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs

Reply via email to