You can create a modifiable version of a project or project
hierarchy. By default, when you copy a project, it is created in the
database and a work area is created automatically. You can set work
area properties at the time you copy the project.
About this task
ccm copy_project|cp [-purpose purpose] [-platform platform]
[-release (release_spec|as_is)]
[-subprojects] [-scope ((all|all_subprojects) |
(project_only|nosubprojs|nosubprojects) |
(same_component|same_component_subprojects) |
(same_release|same_release_subprojects))])
([-t|-to version] |
[(-versions old_version:new_version,old_version:new_version...)...])
([-u|-update] | [-no_u|-no_update]) ([-cb|-copy_based] |
[-lb|-link_based|-ncb|-not_copy_based])
([-rel|-relative] | [-nrel|-not_relative])
[-set|-path|-setpath absolute_path] ([-mod|-modifiable] |
[-nmod|-not_modifiable]) ([-tl|-translate|-translation] |
[-ntl|-no_translate|-no_translation]) ([-wa|-maintain_wa] |
[-nwa|-no_wa]) ([-wat|-wa_time] | [-nwat|-no_wa_time])
[-c|-comment comment_string] [-ce|-commentedit]
[-cf|-commentfile file_path] project_spec...
- -c|-comment comment
- Specifies to append a comment to all baseline projects and their
members when they are checked in to the released state.
The comment can contain more than one line and accepts backslash encoded
values.
- You can use this option with -commentedit and -commentfile.
If you use the -commentedit option, the comment displays
in the default text editor.
- -ce|-commentedit
- Specifies to invoke the default text editor to compose and edit
the comment. The result saved from the text editor is used as the
final comment. You can use this option with the -comment and -commentfile options.
- -cf|-commentfile file_path
- Specifies to use the contents of the specified file for the comment.
If you specified -comment, it is appended to that
comment. You can use this option with the -commentedit option.
- -cb|-copy_based
- Specifies that a work area is copy based.
- -lb|-link_based|-ncb|-not_copy_based
- Makes the work area link-based. This option is available to UNIX users only.
- See the work_area
command for more information.
- -mod|-modifiable_wa
- Specifies that files in the work area have permissions set so
they are modifiable even if they are not checked out. The default
is -nmod|-not_modifiable_wa.
- -nmod|-not_modifiable_wa
- Specifies that files in the work area have permissions set so
they are modifiable by default only if they are in a writable state
such as working. The default is -nmod|-not_modifiable_wa.
- -no_u|-no_update
- Specifies not to update the project after it is copied. The default
is -no_u|-no_update.
- -ntl|-no_translate|-no_translation
- Specifies that ASCII files in the work area are copied between Windows and UNIX without newline translation. The default
is -tl|-translate.
- -nrel|-not_relative
- Specifies that any work area is located on an absolute path. The
default is for the new project to use the same relative setting as
the project being checked out.
- -nwa|-no_wa
- Specifies that the project does not have a maintained work area.
The default is -wa|-maintain_wa.
- -nwat|-no_wa_time
- Specifies that the files in the project work area use timestamps.
The timestamps show the modification time rather than the time they
were copied into the work area. The default is -nwat|-no_wa_time.
- -platform platform
- Specifies the platform to be used for the new checked out project.
Set the platform to a valid platform name. The
platform choices are listed in the CCM_HOME\etc\om_hosts.cfg file
(Windows) or $CCM_HOME/etc/om_hosts.cfg file
(UNIX) in your Rational Synergy installation.
If the option is not specified, the default is to use the same platform
value as the project being checked out.
- project_spec
- Specifies the project to copy. See Project specification for details.
- -purpose purpose
- Specifies the purpose for the new copied project. The purpose must
be the name of a valid defined purpose and that purpose must be valid
for the project release. See project_purpose command for
details.
- If this option is not specified, and you are in developer role,
the default is Insulated Development. If you do not specify this option,
and you are in the build_mgr or ccm_admin role,
the default is Integration Testing.
- -rel|-relative
- Specifies to locate the work area on a path relative to the parent
project path. The default is for the new project to use the same relative
setting as the project being checked out.
- -release release_spec
- Specifies the release to be used for the new, copied project.
If the keyword "as_is" is specified, or the option
is not specified, the default is to use the release of the project
being checked out. You can set the release_spec to
a release defined in the current database. See Release specification for details.
- Projects must have a release value because project groupings and
their corresponding process rules must always be associated with a
release. Manual update properties are not supported.
- -scope (all|all_subprojects) | (project_only|nosubprojs|nosubprojects)
| (same_component|same_component_subprojects) | (same_release|same_release_subprojects)
- Specifies the scope for copying subprojects. You can copy only
the subprojects for the same release, only the subprojects for the
same component, all subprojects, or no subprojects.
- -set|-path|-setpath absolute_path
- Specifies the work area path to be used for the copied project.
If not specified, a default work area path is determined using the
current project_subdir_template. See Setting the work area path template for shared access for
more information.
- -subprojects
- Specifies to copy all subprojects in the specified project hierarchy.
- -tl|-translate|-translation
- Indicates to translate ASCII files when they are copied between Windows and UNIX within the project work area.
- -t|-to version
- Specifies the version of the checked out project. If -to or -versions are
not specified, the default next version is computed automatically.
- -u|-update
- Specifies to update the checked out project when it is copied.
If specified, the project is checked out without a work area. The
project is updated according to the project grouping setting, which
indicates whether to refresh the baseline and tasks. If the project
is to have a maintained work area, the project is synchronized. The
default is -no_u|-no_update.
- -versions "old_ver:new_ver,old_ver:new_ver,..."
- Specifies the new versions to use for copying a project or project
hierarchy. Each mapping applies to all projects in the hierarchy that
currently have that value. If new_version is NoCheckOut,
projects with the corresponding old_version are not
copied.
- If -to or -versions are not
specified, the default next version is computed automatically.
- -wa|-maintain_wa
- Specifies that the project has a maintained work area. The default
is -wa|-maintain_wa.
- -wat|-wa_time
- Specifies that the files in the project work area use timestamps.
The timestamps show the time the files were copied into the work area,
rather than their modification time. The default is -nwat|-no_wa_time.
The default is -nwat|-no_wa_time.
Example
- Copy a new version
of the projA-3 project.
ccm
copy_project -c "test projA" projA-3
- Copy a new development projects hierarchy from an
existing project hierarchy. Set the versions of all of the projects
to your name.
ccm copy_project toolkit-int
-subprojects -to john
- Copy a new build management project hierarchy for
system testing. Set the release and platform values and versions.
ccm copy_project tool_top-1.0 -subprojects -release
2.0 -platform win32 -purpose "System Testing" -versions "1.0:sqa,win16_1.0:win16_sqa,win32_1.0:win32_sqa"
- Modify the version for a top-level project and propagate
the change to its subproject versions.
ccm
copy_project top_project_spec -subprojects -to version