NAME
ClearCase::Wrapper::MGi - Marc Girod's contributed cleartool wrapper functions
SYNOPSIS
This is an overlay module for ClearCase::Wrapper containing Marc Girod's non-standard extensions. See perldoc ClearCase::Wrapper (by David Boyce) for more details.
CLEARTOOL EXTENSIONS
LSGENEALOGY
New command. LsGenealogy is an alternative way to display the version tree of an element. It will treat merge arrows on a par level with parenthood on a branch, and will navigate backwards from the version currently selected, to find what contributors led to the version currently selected. This is thought as being particularly adapted to displaying the bush-like structure caracteristic of version trees produced under the advocated branching strategy.
- -all flag
-
Show 'uninteresting' versions, otherwise skipped:
- -obsolete flag
-
Add obsoleted branches to the search.
- -short flag
-
Skip displaying labels and 'labelled' versions and do not report alternative paths or siblings.
- -depth flag
-
Specify a maximum depth at which to stop displaying the genealogy of the element.
CO/CHECKOUT
Supports the BranchOff feature, which you can set up via an attribute in the config spec. The rationale and the design are documented in:
http://www.cmwiki.com/BranchOffMain0Instead of branching off the selected version, the strategy is to branch off the root of the version tree, copy-merging there from the former.
This allows to avoid both merging back to /main or to a delivery branch, and to cascade branches indefinitely. The logical version tree is restituted by navigating the merge arrows, to find all the direct or indirect contributors.
MKBRANCH
Actually a special case of checkout.
DIFF
Evaluate the predecessor from the genealogy, i.e. take into account merges on an equal basis as parents on the same physical branch. In case there are multiple parents, consider the one on the same branch as 'more equal than the others' (least surprise principle).
Preserve the (Wrapper default) assumption of a -pred flag, is only one argument is given.
UNCHECKOUT
This wrapper implements a common trigger, to remove the parent branch if it has no checkouts, no sub-branches, and no remaining versions, if the version uncheckedout was number 0.
COPYRIGHT AND LICENSE
Copyright (c) 2007 IONA Technologies PLC (until v0.05), 2008-2009 Marc Girod (marc.girod@gmail.com) for later versions. All rights reserved. This Perl program is free software; you may redistribute it and/or modify it under the same terms as Perl itself.
SEE ALSO
perl(1), ClearCase::Wrapper, ClearCase::Wrapper::DSB