rmver
Removes a version from the version tree of an element
Applicability
Product
|
Command
type
|
ClearCase®
|
cleartool subcommand
|
Platform
|
UNIX®
|
| Linux® |
Windows®
|
Synopsis
- rmver [ –f/orce ] [ –xbr/anch ]
[ –xla/bel ] [ –xat/tr ]
- [ –xhl/ink ] [ –dat/a ]
[ –ver/sion version-selector | –vra/nge low-version high-version ]
[ –c/omment comment | –cfi/le comment-file-pname | –cq/uery
| –cqe/ach | –nc/omment ] pname ...
Description
This command destroys information irretrievably.
Using it carelessly may compromise your organization's ability to support
old releases.
rmver deletes one or more
versions from their elements. For each version, this entails the following:
- Removal of the version object from the VOB
database
- Removal of all metadata items (labels, attributes,
hyperlinks, and triggers) that were attached to the deleted version
- Removal of all event records for the deleted
version
- (File elements only) Removal of the data
containers that hold the deleted version's file system data
A destroy version event
record is created for the element.
In general, a removed version is physically deleted
from the VOB source pool. However, a removed version is logically deleted
if it has a descendant and is managed by the z_text_file_delta or text_file_delta type
managers. For more information about the type managers, see the type_manager reference
page.
Behavior in snapshot views
In a snapshot view, rmver does
not unload the element, but leaves a view-private copy of the element in the
view. In other respects, rmver behaves the same in a snapshot
view as it does in a dynamic view.
Deleted version IDs
The version ID of a deleted version is never
reused. There is no way to collapse a branch to fill the gaps left by deleted
versions. If a deleted version was the last version on a branch (say, version
6), the next checkin on that branch creates version 7.
A reference to a deleted version produces a not
found or no such file or directory error.
Controlling the size of the vista.tjf file
The file vista.tjf records
updates to the VOB that result from rmver operations. vista.tjf can
grow very large. For information about limiting its size, read about the file db.conf in
the config_ccase reference page.
Restrictions
Identities
You must have one of the following identities:
- Version creator
- Element owner
- VOB owner
- root (UNIX and Linux)
- Member of the ClearCase administrators group (ClearCase on Windows)
Locks
An error occurs if one or more of these objects
are locked: VOB, element type, element, branch type, branch, pool (nondirectory
elements only).
If an instance of a locked label type is attached to the version or to
a branch containing the version, you cannot remove the version unless you
have one of the following identities: VOB owner, root, or member
of the ClearCase group.
Mastership
(Replicated VOBs only) Your current replica must
master the branch containing the version you are removing.
Other
You cannot delete a version from which someone
currently has a checkout. You cannot delete version 0 on a branch, except
by deleting the entire branch. (See rmbranch.)
Options and arguments
Confirmation step
- Default
- rmver prompts for confirmation before deleting anything.
- –f/orce
- Suppresses the confirmation step.
Deleting interesting versions
- Default
- rmver does not delete a version to which a version
label, attribute, or hyperlink is attached, or at which a branch begins.
- –xbr/anch
- Deletes a version even if one or more branches begin there. In the process,
those branches (including all their versions and subbranches) are also deleted.
- –xla/bel
- Deletes a version even if it has one or more version labels.
- –xat/tr
- Deletes a version even if it has one or more attributes.
- –xhl/ink
- Deletes a version even if it has one or more hyperlinks. This also destroys
the hyperlink object, thus modifying the other object to which the hyperlink
was attached.
Important: Using this
option can delete merge arrows (hyperlinks of type
Merge) created by
the
merge command, which may destroy essential metadata.
Data-only deletion
- Default
- rmver deletes both the version object in the VOB database
along with associated metadata and the corresponding data container in a source
storage pool.
- –dat/a
- Deletes only the data for the specified version, leaving the version object,
its subbranches, and its associated metadata intact. In particular, this option
preserves event records and enables continued access to the configuration
record of a DO version.
Important: Using
this option implicitly invokes the
–xbranch,
–xlabel,
–xattr,
and
–xhlink options, as well. That is, the data container
is deleted even if the version has a label, attribute, or hyperlink attached
or has a branch sprouting from it.
Specifying the versions to be removed
- Default
- None.
- –ver/sion version-selector
- For each pname, removes the version specified by version-selector.
This option overrides both version-selection by the view and version-extended
naming. For syntax details, see the version_selector reference
page.
- –vra/nge low-version high-version
- For each pname, removes all versions between (but not
including) the two specified versions. low-version and high-version must
be on the same branch and are specified in the same way as version-selector.
- pname ...
- (Required) One or more pathnames indicating the versions to be removed,
as follows:
- A standard or view-extended pathname to an element specifies the version
in the view.
- A version-extended pathname specifies a version, independent of the view.
Use –version or –vrange to
override these interpretations of pname.
Event records and comments
- Default
- Creates one or more event records, with commenting controlled by your .clearcase_profile file
(default: –nc). See the comments reference
page. Comments can be edited with chevent.
- –c/omment comment | –cfi/le comment-file-pname |–cq/uery | –cqe/ach | –nc/omment
- Overrides the default with the option you specify. See the comments reference
page.
Examples
The UNIX system and Linux examples in this
section are written for use in csh. If you use another
shell, you may need to use different quoting and escaping conventions.
The
Windows examples that include wildcards or quoting are written for use in cleartool interactive
mode. If you use cleartool single-command mode, you may
need to change the wildcards and quoting to make your command interpreter
process the command appropriately.
In cleartool single-command
mode, cmd-context represents the UNIX system and Linux
shells or Windows command interpreter prompt, followed by the cleartool command.
In cleartool interactive mode, cmd-context represents
the interactive cleartool prompt.
- Delete the version of msg.c in
the view.
cmd-context rmver msg.c
Removing these versions of "msg.c": /main/1
Remove versions? [no] yes
Removed versions of "msg.c".
- Delete version 1 on the rel2_bugfix branch
of element util.c, using a version selector to specify
the version, suppressing confirmation prompts.
cmd-context rmver -force -version \main\rel2_bugfix\1 util.c
Removing these versions of "util.c":
\main\rel2_bugfix\1
Removed versions of "util.c".
- Delete version 3 on the main branch
of element Makefile, even if it has labels and/or attributes.
Use a version-extended pathname to specify the version.
cmd-context rmver -xlabel -xattr Makefile@@/main/3
Removing these versions of "Makefile":
/main/3 (has: labels, attributes)
Remove versions? [no] yes
Removed versions of "Makefile".
- Delete all versions between 0 and LATEST on
the main branch of element hello.c.
cmd-context rmver -vrange \main\0 \main\LATEST hello.c
Removing these versions of "hello.c":
\main\1
\main\2
Remove versions? [no] yes
Removed versions of "hello.c".
- Delete version 2 on the main branch
of util.c, even if there are one or more subbranches
off that version. (The subbranches, if any, are also deleted.)
cmd-context rmver -xbranch util.c@@/main/2
Removing these versions of "util.c":
/main/2 (has: subbranches)
Remove versions? [no]yes
Removed versions of "util.c".
See also
chevent, cleartool, comments, config_ccase, describe, lshistory, lsvtree, merge, rmbranch, rmelem, rmname, type_manager, version_selector