CONTIBUTOR(S): Bob Chase Atria Software e-mail:chase@atria.com ====================================================== ********************************************************** ************** THIS IS UNSUPPORTED SOFTWARE ************** ********************************************************** ********************************************************** * Atria makes no representation that the descriptions * * and software code contained in this document will * * not infringe on existing or future patent rights, * * copyrights, trademarks, trade secrets or other * * proprietary rights of third parties. The * * descriptions contained herein do not imply the * * granting of licenses to make, use, sell, license or * * otherwise transfer Atria products described herein. * * Atria disclaims responsibility for errors which may * * appear in this document, and it reserves the right, * * in its sole discretion and without notice, to make * * substitutions and modifications in the products and * * practices described in this document. * ********************************************************** ------------------------------------------------------------------------------ T0012: UPDATE TREE: Scripts for checking in and out whole directory trees of ClearCase elements ------------------------------------------------------------------------------ UPDATE TREE OVERVIEW This directory contains example shell scripts that can be used to checkout and checkin a directory tree of elements, to/from a specified "private copy" of the tree (in a view private area under an MVFS mount point, or somewhere outside the MVFS). ClearCase does not currently provide a directory tree element type, which would allow a single directory tree object to be checked in and out atomically. It is assumed that the number of names of objects in the tree may change from version to version. Since these manipulations will likely be made by a tool that does not understand ClearCase operations, the "private copy" of the tree is used so that standard filel system operations (e.g. 'rm', 'mv') can be used (they would fail if performed on VOB objects). These scripts will be added to ClearCase Version 2 as "ClearCase Examples" in the directory ${ATRIAHOME}/examples/update_tree SCRIPTS cotree Usage: cotree Checks out the root of the specified VOB directory tree and makes writable copy of entire tree at the specified destination. Destination must not exist in advance. citree Usage: citree [LABEL] Checks in all objects from the specified source tree that are not already present in the specified VOB destination tree. It creates new VOB elements as necessary. It will also HIDE elements that were previously in the destination tree but not present in the current source tree. I.e. the script will 'cleartool rmname' obsolete names from the new version of a directory. Optionally, a specified version label will be associated with the current version of each object in the destination tree that is visible after the update is completed. It is strongly recommended that this be used, because if there is no label associated with all of the individual elements in some version of the tree, then it may be quite difficult to ever select that version of the tree in the future. When checking in, this script prompts the user for a single comment which is applied to all the new versions. After checking in, the script renames the original source tree with a .bak suffix. (Any pre-existing .bak is removed.)