update

Updates elements in a snapshot view

APPLICABILITY

ProductCommand type
ClearCasecleartool subcommand
ClearCase LTcleartool subcommand

Platform
UNIX
Windows

SYNOPSIS

  • Update elements using the graphical update tool:
    update –g·raphical [ pname ... ]

  • Update elements from the command line:
    update [ –print ] [–f·orce ] [ –ove·rwrite | –nov·erwrite | –ren·ame ]
    [ –cti·me | –pti·me ] [ –log pname ] [ pname ... ]

  • Load elements from the command line by specifying one or more load rules:
    update –add·_loadrules [ –print ] [ –f·orce ] [ –ove·rwrite
    | –nov·erwrite | –ren·ame ] [ –cti·me | –pti·me ]
    [ –log pname ] pname [ pname ... ]

DESCRIPTION

Updating Loaded Elements

For one or more loaded elements, the update command does the following:

  • Reevaluates the config spec to select versions of loaded elements in the VOB and loads them if they differ from the currently loaded versions
  • Unloads the file or directory from the view if a loaded element is no longer visible (that is, a new directory version doesn't have an entry for the element). To unload a directory element, update does the following:
    • Recursively deletes all loaded elements.
    • Renames the directory to directory-name.unloaded if necessary, thus preserving all view-private files and view-private directories.
  • Copies the version selected by the config spec into the snapshot view, if the version in the view is different from the version in the VOB selected by the config spec. The version in the view can be different if, for example, the selected version in the VOB is newer, or if a label is attached to the selected version in the VOB, but not to the version in the view.

update does not apply to files or directories that are checked out to the current view.

If update cannot access a VOB (perhaps because of problems in the network), any elements from that VOB remain loaded, but are put in a special state (rule unavailable).

The update command accounts for the fact that VOB elements specified by your config spec may change while an update is in progress. To avoid loading an inconsistent set of element versions, update ignores versions that meet both of the following criteria:

  • The version is selected by a config spec rule that specifies the LATEST version label.
  • The version was checked in after the moment the update operation began.

update also accounts for the fact that the system clocks on different hosts may not be synchronized.

When issued from a snapshot view, the following cleartool commands invoke update at the completion of the command:

  • edcs
  • findmerge (only when used to merge versions of a directory)
  • ln
  • merge (only when used to merge versions of a directory)
  • mkdir
  • mkelem
  • mv
  • rmname
  • setcs
  • uncheckout

Loading New Elements

The form of the update command that specifies the –add_loadrules option enables you to add new load rules to your config_spec and load the elements that those rules specify.

RESTRICTIONS

None.

OPTIONS AND ARGUMENTS

Using the Graphical Update Tool

Default
The update is performed in the command window.

–g·raphical
Invokes the graphical update tool.

Using the Preview Mode
Default
None.

–print
Produces a preview of the update operation: instead of copying or removing files, update prints a report to standard output of the actions it would take for each specified element.

Confirmation Step

Default
update prompts for confirmation of the elements to be updated. However, update does not in all circumstances prompt you to confirm all the elements to be updated. Sometimes there are no confirmation prompts when you update elements, even though you have not specified –force.

–f·orce
Suppresses the confirmation prompts.

Handling Hijacked Files

Default
–noverwrite

–ove·rwrite
Overwrites all hijacked files with the version selected by the config spec.

–nov·erwrite
Leaves all hijacked files in the view with their current modifications.

–ren·ame·
Renames hijacked files to filename.keep and copies the version in the VOB selected by the config spec into the view.

Determining the Modification Timestamp

Default
The initial default is set by the mkview command. Thereafter, the most recently used time scheme is retained as part of the view's state and is used as the default behavior for the next update.

–cti·me
Sets the time stamp of a file element to the current time, that is, the time at which the version is copied into the view. –ctime has no effect on directories (directories always use the current time).

–pti·me
Sets the time stamp of a file element to the time at which the version was checked in to the VOB. –ptime has no effect on directories. (Directories always use the current time.)

Specifying a File Transfer Log

Default
A log file named update.timestamp.updt that is written to the root of the snapshot view directory.

–log pname
Specifies a log file for the operation. The log file lists the actions taken by the update command, as well as an indication of any errors that occur during the operation. To suppress generation of the log file, use –log /dev/null (UNIX) or -log NUL (Windows).

Specifying New Load Rules

Default
None.

–add_loadrules
Specifies that the pname argument is a new load rule. The new rule is appended to the view's config spec, and the elements it specifies are loaded.

Specifying the Elements to be Updated or Added

Default
If you do not specify –add_loadrules, the current snapshot view; if you specify –add_loadrules, none.

pname ...
If you do not specify –add_loadrules, this argument specifies the files and directories to update. All specified directories, including the root directory of the snapshot view, are updated recursively.

If you specify –add_loadrules, this argument is interpreted as a new load rule. The elements specified by the rule are loaded and the rule is appended to the config spec of the current view. pname must be either a pathname relative to your current location in the directory structure of the snapshot view or an absolute path that includes the snapshot view path.

EXAMPLES

The UNIX 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 shell or Windows command interpreter prompt, followed by the cleartool command. In cleartool interactive mode, cmd-context represents the interactive cleartool prompt.

Note: In the UNIX examples that follow, arguments and output that show multicomponent VOB tags are not applicable to ClearCase LT, which recognizes only single-component VOB tags. In this manual, a multicomponent VOB tag is by convention a two-component VOB tag of the form /vobs/vob-tag-leaf—for example, /vobs/src. A single-component VOB tag consists of a leaf only—for example, /src. In all other respects, the examples are valid for ClearCase LT.

  • Preview an update of the view darren_3.2 and produce a log file in the C:\temp directory.

    cmd-context update –print –log C:\temp E:\views\darren_3.2 

  • Update the file ./foo.c using the current time as the time stamp.

    cmd-context update –ctime foo.c 

  • Update the current directory; if there are any hijacked files, rename them filename.keep and copy the VOB versions specified by the config spec into the view.

    cmd-context update –rename

  • Load into the current view the new elements in \doc\user_manual, adding the rule load \doc\user_manual to the view's config spec.

    cmd-context update –add_loadrules \doc\user_manual 

SEE ALSO

checkin, checkout, cleartool, clearviewupdate, config_spec, edcs, findmerge, get, ln, merge, mkdir, mkelem, mkview, mv, rmname, setcs, uncheckout



Copyright© 2003 Rational Software. All Rights Reserved.