Clear Case Concepts and Terminology

advertisement
ClearCase Concepts and Terminology
ClearCase Concepts & Terminology










VOB
Element
Version, Version Tree
Meta data
Branch
View
View private object
Config Spec
View Profile
Checkouts (reserved/unreserved)
VOB – Version Object Base
 Comprised of a large set of of server based
storage containers residing in a proprietary
database.
 Data repository that stores versions of file
elements, directory elements, and meta-data
associated with these elements.
 Any item stored within a VOB is called an
element. There are two effective types of
elements for this discussion: file elements and
directory elements.
Element – File or Directory
 An element is a file or directory that is under
ClearCase control, including all its constituent
versions.
 An element is the basic item that ClearCase
“versions”. The version of an element is what
the end-user will work with in the majority of
his/her ClearCase interactions.
 A new version of a file or directory element is
created each time it is revised and checked-in.
Element – File or Directory
 File elements can be of many different file
types. Examples of these file types include
binary files (ie. DLLs, executables) as well as
standard source code files for all types of
languages.
 Directory elements contain file entries only.
Version of an Element
 A version is a particular revision of an element
(file element or directory element).
 A new version of a file or directory element is
created each time it is revised and checked-in.
 The versions of every element are organized into
a version tree structure.
Version Tree of an Element
 A version tree is a hierarchical structure in
which all the versions of an element (file or
directory elements) are logically organized.
Meta-Data
 Meta-data is information associated with a
ClearCase element, including labels, attributes,
hyperlinks, branches, triggers, etc. We will
discuss in brief only those meta-data that an
end-user would deal with (labels, attributes,
branches).
 A label is a ccadmin-defined field that is
attached to a version. This field can contain any
data such release or fix ids, source code
baseline ids, or other identifiers useful to the
developer.
Meta-data (continued)
 An attribute is a tag in the form of a name/value
pair. It can have a specific value or a range of
values and can be attached to versions and/or
branches.
 An attribute’s name/value-range are usually
defined by ccadmin. The value assigned to an
attribute is usually set by the end-user.
 Attributes are useful in creating interfaces with
other systems, and for tracking the status
shipped/testing status of a particular code
module.
Meta-data (continued)
 A branch is a linear sequence of an element’s
versions.
 It is a special type of meta-data that enables
multiple versions of an element to diverge at a
specified point, which enables developers to
work in parallel on a common module.
 Common types of branches: integration branch
(shared/common branch among large team),
private branch (exclusive branch used to isolate
changes from other team members).
View – Primary Workspace
 A view is the basic ClearCase unit used to access
a VOB (versioned object base).
 Users may have more than one view, active or
inactive, at a time.
 Each view can be configured to select a
different version set of elements. For example,
HRMS801_view can be configured to look at the
latest 8.01 version of File A, while
HRMS880_view can be configured to look at the
latest 8.80 version of Fie A.
View Types – Dynamic & Snapshot
 ClearCase utilizes two types of views: dynamic
view and snapshot view.
 The dynamic view is the most common method of
accessing a VOB.
 Uses the ClearCase Multiversion File Version (MVFS).
 Provides immediate access to the latest checked-in
versions of elements based on the view’s
configuration.
 Displays itself under the “B:drive” on your local
machine’s Windows Explorer session.
 Can be activated and used only when your machine is
connected directly to the PeopleSoft LAN.
View Types (continued)
 The snapshot view is best utilized when you are
disconnected from the the LAN.
 Copies/loads the elements from a VOB to a
designated location on your local machine.
 Requires the user to perform an update to load any
newly created versions into the view since the last
update or original load took place.
 Does not provide access to the lastest checked-in
versions of elements until the user has performed an
update view operation.
View Private Object
 A view private object is a file or directory that
exists only in a particular view.
 View private objects are not under ClearCase
version control.
 Include objects such as temporary files,
checked-out files, any files copied into a view by
the user.
 An editable view private copy of a file is placed into a
user’s view at checkout time. It will remain as a view
private copy until it is checked-in, which would then
promote the changes to the VOB and create a new
version of that element.
View Config Spec
 A view’s config spec (configuration specification)
governs which versions of VOB elements a view
will select and in what order they should be
selected.
 Every view has a config spec, either the default
one or a customized one.
 Config specs are usually created/modified by
ccadmin. On rare occasion, a user might modify
his/her own view config spec.
Accessing VOB elements
Dynamic or Snapshot
View config spec
selects one version
of an element,
rejects all others.
View Profiles (Windows only)
 A view profile consists of a base config spec
along with a list of vobs to be automatically
mounted when the view is activated.
 Can be associated with a view at any time, but is
most commonly associated with the view at view
creation time.
 Available only to ClearCase Windows clients.
Not available on Unix platform.
Modifying VOB Elements
 Modifying VOB elements involves starting a view,
checking out the elements you wish to change,
editing them, checking in the elements that have
been changed.
 Two types of checkouts in ClearCase: reserved
checkout and unreserved checkout.
Reserved Checkout
 A reserved checkout creates a place-holder
(reservation) for the next version of the
element.
 The user/view that issued the reserved
checkout has exclusive ownership of the placeholder until the checkout has been checked-in or
cancelled.
 No other checkins of the element can be made
until the reserved checkout has been resolved
(ie. checked in or cancelled).
Unreserved Checkout
 An unreserved checkout of an element does
*not* reserve the next successor version for
that view.
 Can be issued against the same element by
multiple views assuming no reserved checkout
exists on that element.
 Checkin of an unreserved checkout is on a first
come, first served basis.
 If a checkin from another view has taken place before
your checkin, a merge of the versions might be
required in order to checkin your change.
Download