- Part 0: What we've got
-
- P4/Modules.pm - a P4 module the reads an equivalent to the
- cvs-modules file for mapping depot directories
- into client directories or other branch directories.
- And vice versa. It's for writing scripts.
- The public interface is pretty simple right now.
-
- bin/mkmodules.pl - a script to convert cvs-modules to p4-modules
- bin/mkbranch.pl - a sample script for generating branch specs
- bin/mkclient.pl - a sample script for generating client specs
- bin/c2pwhere.pl - a sample script for mapping CVS directories back
- into the depot. Only useful for reference.
-
- bin/mkconvclient.pl - a script to map all of the branches for
- all of the modules into a client spec.
- Now that cvs2p4 supports P4::Modules, this
- isn't really needed (and it makes for really
- slow 'p4 where' commands). Using the p4-modules
- file from mkmodules.pl is the recommended practice.
-
-
- Part 1: Getting ready to use P4::Modules
-
-
- CREATING A P4 MODULES FILE
-
- To create a p4 modules file, use the mkmodules script. This takes a
- CVS modules file and creates an equivalent one that can be used by
- the P4::Modules Perl module.
-
- Obtain the use info with:
-
- mkmodules.pl -h
-
-
- For an example of a mapfile, see sample.depotmap.
- For an example of a CVS files regexp file, see sample.cvs-files.
-
- The output of mkmodules can be saved and used as the modules definitions
- for the other scripts.
-
-
-
- CREATING A CONVERSION CLIENT
-
- To create a Perforce client spec which can be used to map all of the modules
- and any branches desired into a Perforce client workspace. You can import
- the client spec into perforce with a command like:
-
- mkconvclient [ options ] | p4 client -i
-
-
- Obtain the use info with:
-
- mkconvclient.pl -h
-
-
- For an example of a branches file, see sample.branches.
- For an example of a modules file, see sample.modules.
-
-
-
- Part 2: Using P4::Modules
-
-
- CREATING A CLIENT SPEC
-
- Use the mkclient.pl script to generate a Perforce client spec with the P4
- modules and branches that you desire. This script will only give you one
- version of each module but you can mix and match which versions of each
- module are mapped out of the Perforce depot.
-
- You can import the client spec into perforce with a command like:
-
- mkclient [ options ] | p4 client -i
-
-
- Obtain the use info with:
-
- mkclient.pl -h
-
-
- For an example of a config file, see sample.mkclient.
- For an example of a modules file, see sample.modules.
-
-
-
- CREATING A BRANCH SPEC
-
- Use the mkbranch.pl script to generate a Perforce branch spec with the P4
- modules and branches that you desire. This script will only give you one
- version of each module but you can mix and match which versions of each
- module are branched to the new branch location.
-
- You can import the branch spec into perforce with a command like:
-
- mkbranch [ options ] | p4 branch -i
-
-
- Obtain the use info with:
-
- mkbranch.pl -h
-
-
- For an example of a config file, see sample.mkbranch.
- For an example of a modules file, see sample.modules.
-
-
-
- DETERMINING WHERE A CVS FILE IS IN THE DEPOT and
- FINDING DUPLICATELY MAPPED DIRECTORIES
-
- Use the c2pwhere.pl script for this. Given a path (and branch) under
- CVSROOT, it will return the location in the depot. As a side effect,
- c2pwhere.pl also warns of conflicting file mappings.
-
-
- Obtain the use info with:
-
- c2pwhere.pl -h
-
-
- Example:
-
- ./bin/c2pwhere -b 0.5 -f atg.modules /atg/atginstall/lib/...
- or ./bin/c2pwhere -b 0.5 -f atg.modules /atg/atginstall/lib/somefile
-
- example output is:
-
- //products/DAS/0.5/atg/atginstall/lib/...
- or //products/DAS/0.5/atg/atginstall/lib/somefile
-
- NOTE: The path argument isn't the full path. It's relative to CVSROOT.
# |
Change |
User |
Description |
Committed |
|
#1
|
843 |
Matthew Rice |
Matt's cvs2p4 1.2.25 release |
24 years ago
|
|