320 likes | 764 Views
ClearCase. Software version control system. Having a Software configuration Management Tool is very important in the field of software development. I will Talk about,. Source Control in general List of existing Source Version Control Software Version Control with ClearCase Summary.
E N D
ClearCase Software version control system
Having a Softwareconfiguration Management Tool is very importantin the field of software development
I will Talk about, • Source Control in general • List of existing Source Version Control Software • Version Control with ClearCase • Summary
Source Control Luba’s workspace main line 0 check out versions a_file.c check in 1 2 3
ClearCase - Windows and UNIX Visual SourceSafe - Windows CVS - UNIX CMVision - Unix and Windows Control CS - Unix and Windows the list goes on … List of existing Source Version Control Software * There are a lot of them !*http://www.iac.honeywell.com/Pub/Tech/CM/CMTools.html#CMWWWsites
What is ClearCase? ClearCase is a comprehensive software version control and configuration management system, designed for development teams working in a local network.
ClearCase Overview • Provides versioning of all types of files & directories • Records and reports history • Guarantees accurate reproduction of every release • Provides traceability & reproducibility • Provides powerful branch-and-merge tools • Assures integrity of all software elements
Version Control with ClearCase • Branching • Merging • Labeling
Version Control with ClearCase \main - Versions all file types - Versions directories - Files are read-only until checked out - Unlimited branching and merging 0 VERSIONS Beta_01 1 BRANCH 2 LABELS Rls1.0 \Rls2_bugfix Rls2.0 3 0 1 4 2 Rls3.0 5
ClearCase Version Control Features • Easy checkout-edit-checkin model • Intelligent merge utility automatically merges non-conflicting changes • Graphical compare and merge tools • Two modes of work with Dynamic and Snapshot Views
Workspace Management - Views WHAT IS A VIEW? • Workspace for an individual developer or closely coordinated group • Selects versions of Versioned Object Base (VOB) directories and files • Allows developers to work without interfering with others
What is a VOB?Versioned Object Base • A read-only repository of ClearCase elements • A network-wide, file system resource which stores version-controlled data • A user accesible repository that resides: • on a Windows NT system, or • on a UNIX system
Version Selection by Views • A view selects versions of elements • What is seen is the result of an ordered set of rules called a configuration specification (config spec). • Selected versions appear in a standard directory tree with recognizable file names. load \applet\src element * CHECKEDOUT element * \main\LATEST VOB foo.c src bar.c config spec V I E W src foo.c bar.c
What is a Configuration Specification? • Each view has a config spec that defines a set of rules for selecting versions of file and directory elements • A default config spec is automatically set whenever you create a new view
The default config spec selects files or directories that are: • checked out, or • the latest version on the main branch of the version tree The Default Config Spec: element * CHECKEDOUT element * \main\LATEST
Workspace Management - Views • Dynamic Views • Snapshot Views
Snapshot Views • Downloads files based on Rules • Allows work while disconnected from the net • Optimal build performance for prototype or test builds load \applet\src element * CHECKEDOUT element * \ VOB foo.c src bar.c Snapshot View src foo.c bar.c CLIENT
When To Use Snapshot Views • You want to work with source files that are under ClearCase control while disconnected from network • You prefer to use a view that is updated only at your request • You want to access a view from a machine that is not a ClearCase host
Dynamic Views • Transparent access to elements - a virtual filesystem • Always up-to-date • Minimal copying • Provides build auditing
Snapshot View vs. Dynamic View Similar • use config specs rules to select element versions • follow the checkout, edit, checkin paradigm • allow reserved or unreserved checkouts
Snapshot View vs. Dynamic View Differ • as development progress, a snapshot view becomes out of date and must be explicitly updated • a checkout of an element may use the version loaded into the view, not necessarily the latest version in the VOB • to check in such an element, you may have to perform a merge • if the element version is not the latest version, you are asked to confirm which version to checkout
20 minutes is NOT enough to cover everything. If you are interested in learning more about ClearCase, here is the web site: http://www.rational.com/index.jtmpl
If asked what the talk was about, these are the things you must remember, :) WE DISCUSSED: • checkout-edit-checkin model • Labeling • Branching • Merging • Views • Config Spec • WE HAD A LOT OF FUN!!!