Uploaded by jeetendra-kumar

CC Overview

advertisement
ClearCase Overview
© 2015 IBM Corporation
Agenda
•
•
•
•
•
•
•
•
ClearCase Deployment Styles
Version Control
Workspace Management
Process Management
Build Management
Merge Management
MultiSite
CTE, CCRC, and Automatic Views
1
ClearCase Deployment
Styles
Click to add text
© 2015 IBM Corporation
IBM Rational ClearCase
Version
Control
Workspace
Management
element
Process
Management
Build
Management
Automation
Enforcement
Auditing
Correctness
Binary Sharing
view
DB
VOB
Labels
V7.0.2, V8.0
Branches
v7.0.2_bugfix
Attributes
Fixes = RATLC00101000
Hyperlinks
Triggers
Locks
clearmake
parallel
distributed
Ant
clearaudit
DB
3
3
Scalable LAN Deployment
Client 2
Client 3
Client n
Web Server
Client 1
Web Server
LAN
MultiSite
View Server Z
NAS
VOB Server A
VOB Server B
VOB Server C
4
Scalable WAN Deployment
Remote Client 1
Remote Client 2
http(s) over WAN
Web Server
(CCRC WAN Server)
Remote Client 3
Web Server
(CCRC WAN Server)
Optional
proxy server
LAN
MultiSite
NAS
VOB Server A
VOB Server B
VOB Server C
5
Interesting MultiSite Deployment
•
Customer has non-classified “light” components with classified “dark” extensions
•
•
Civilian and military versions of the hardware product
Mobile replica, too!
6
Version Control
© 2015 IBM Corporation
ClearCase Version Tree
main
0
1
Rel1
rel1_bugfix
0
2
rel2_int
3
0
1
4
1
3
Rel1.1 2
5
“/main/rel1_bugfix/2”
2
Rel2 6
dbUpdate
0
1
2
3
ClearCase Version Tree
main
0
1
Rel1
rel1_bugfix
0
2
rel2_int
3
0
4
1
Rel1.1 2
5
Rel2 6
1
dbUpdate
2
0
3
1
2
3
ClearCase Version Tree
main
0
1
Rel1
rel1_bugfix
0
2
rel2_int
3
0
4
1
Rel1.1 2
5
Rel2 6
1
dbUpdate
2
0
3
1
2
3
1
1
IBM Rational ClearCase – Version Control
Release_1.1
DB
Workspace Management
© 2015 IBM Corporation
Workspace Management / Dynamic View
CCLC
Full CC client
Kernel file system
Remote access to
versions
Massive
workspaces
Dynamic change
tracking
Build auditing
Client processes
(ClearCase tools, IDEs, shells, compilers, etc.)
DB
DB
DB
DB
13
13
Workspace Management / Snapshot View
CCLC
Client processes
(ClearCase tools, IDEs, shells, compilers, etc.)
Full CC client
Local copies of
versions
DB
DB
DB
DB
14
14
Workspace Management / Web View
CCRC
Client processes
(ClearCase tools, IDEs, shells, compilers, etc.)
http(s)
Thin CC client
Local copies of versions
WAN-friendly protocol
Web Server
DB
DB
DB
DB
15
15
Workspace Management / Automatic View
CCRC
Client processes
(ClearCase tools, IDEs, shells, compilers, etc.)
http(s)
Thin CC client
Kernel file system
Shared copies of versions
On-demand fetching
Huge workspaces
WAN-friendly protocol
Web Server
DB
DB
DB
DB
DB
16
16
Process Management
© 2015 IBM Corporation
UCM – Unified Change Management
•
“Out of the box” process
•
•
Structured components
Baselines of components
• Composite baselines used to span multiple components
•
Activities / change sets
• Activites may be associated with ClearQuest Activites or RTC Work
Items
•
•
Streams collect related activities
Projects
• Organize streams
• Support isolated / private streams and feature streams
– Require ‘deliver’ operation to share with others, ‘rebase’ to accept from
others
• Simple policy / process control
18
IBM Rational ClearCase – “Base ClearCase” Config Specs
Ordered Version Selection Rules
time 4-Jul-2013:8:00:00
element * CHECKEDOUT
element * /main/LATEST
main
0
1
Rel1
dbUpdate
2
rel2_int
3
0
0
rel1_bugfix
1
1
0
4
1
2
2
3
3
Rel1.1
2
5
Rel2
1
6
IBM Rational ClearCase – Config Specs
Ordered Version Selection Rules
element * CHECKEDOUT
element /vobs/utils/… UtilsRel2.3 -nocheckout
element * …/rel1_bugfix/LATEST
element * Rel1 –mkbranch rel1_bugfix
main
0
1
Rel1
dbUpdate
2
rel2_int
3
0
0
rel1_bugfix
1
1
0
4
1
2
2
3
3
Rel1.1
2
5
Rel2
2
6
IBM Rational ClearCase – Process Management
• Branches
• Organize parallel development
• Manage variants
• Labels
• Baseline associated versions
• Attributes
• Name / Value pairs
• Hyperlinks
• Associate two objects
Fixes = RATLC00101000
2
Design
Rel1
Rel1
IBM Rational ClearCase – Process Management
• Triggers
• Execute arbitrary script(s) / program(s) before or after modifying
any VOB object
• Example: Require comment for each checkin
If [ “$CLEARCASE_COMMENT” == “” ]; then
echo “Must supply comment!”
exit 1
# abort checkin attempt
fi
exit 0
# allow checkin to proceed
• Locks
• Prevent modification of object by all or subset of users
• Mark an object as obsolete
2
Key Integrations
•
•
•
•
•
•
•
•
•
•
•
ClearQuest
RTC (Rational Team Concert)
Jira
Eclipse
RSx (Rational Software Architect family)
RAD (Rational Application Developer for Websphere)
Microsoft Visual Studio
Microsoft Office
Microsoft Source Code Control API (SCC)
Sybase PowerBuilder
Borland JBuilder
•
Cadence Design Framework II (DFII) for Virtuoso
23
Build Management
© 2015 IBM Corporation
Build Management
• clearmake
•
•
•
•
Fine-grained (per-target) authoritative auditing
Build correctness
Wink-in
Parallel distributed builds
• Ant auditing
• Audit at task level
• clearaudit
• Coarse-grained authoritative auditing
25
Authoritative Audited Builds
•
Configuration Record Fragment
Target cfs_parse.o built by hack.user
Host "picloram" running SunOS 5.6 (sun4u)
Reference Time 15-May-01.18:08:22, this audit started 15-May-01.18:08:23
View was picloram:/export/home/hack/views/hack_v5.0.bl1
Initial working directory was /vobs/atria/lib/cm/sun5
/vobs/atria/lib/cm/cfs.h@@/main/ucm_main/1
<15-May-00.16:46:18>
/vobs/atria/lib/cm/sun5/cfs.ugh@@13-Oct-2000.200095
/vobs/sys/SOLARIS/sun5.5.1/usr/include/stdio.h@@/main/1
<02-May-96.23:18:04>
/vobs/sys/SOLARIS/sun5.5.1/usr/ccs/bin/yacc@@/main/2 <31-Jan-00.16:35:26>
.
.
.
---------------------------Variables and Options:
---------------------------SRC=..
YACC=/vobs/sys/SOLARIS/sun5.5.1/usr/ccs/bin/yacc
---------------------------Build Script:
---------------------------@echo making cfs_parse.o
rm -f y.tab.c y.tab.h cfs_parse.c cfs_parse.h cfs_parse.o y.output cfs_parse.y.output
/vobs/sys/SOLARIS/sun5.5.1/usr/ccs/bin/yacc -dvt ../cfs_parse.y
Merge Management
© 2015 IBM Corporation
Graphical Access to Branches
Directory Versioning
• Directory elements, like file elements, have version
trees
Rational ClearCase Differencing
R
GREEN
Insert
BLUE
Change
RED
Delete
Directory Differencing
Merge Algebra
Common
Contributor 1
Ancestor
A
A
B
C
D
Contributor 2
A
A
Deleted
C
Inserted
Q
Changed
Deleted
B
Z
X
Merge Result
R
Changed
Changed
Z
Changed
X
Inserted
?
Conflict
Merge Conflicts
MultiSite
© 2015 IBM Corporation
MultiSite: Distributed Development
main
0
1
Rel1
rel1_bugfix
2
rel2_integration
3
0
1
0
4
1
2
3
Rel1.1 2
5
Rel2
6
db_update
0
1
2
3
win98_port
0
1
2
3
Rational ClearCase MultiSite Customers
•
HP
•
•
•
Fidelity Investments
•
•
•
Over 1200 licenses, 10 sites, 4 continents
“The sun never sets on Oracle development”
Texas Instruments
•
•
•
25 repositories distributed across 3 sites
Synchronized every 5 minutes
Oracle
•
•
•
Over 1600 licenses, 14 sites
“With MultiSite, code sharing is routine”
5,000 VOB families, 20,000 replicas
VOB size: 100TB, Replication traffic: 5.4TB / month
Cisco
•
•
•
9000+ users, 80,000 views
1707 VOB families, 5525 replicas
Users / Admin: 713:1
MultiSite Distributed Development
• Each site has a copy of the same repository
US Site
Europe Site
site "USA”
site "USA”
usa_branch
usa_branch
0
...
10
11
0
replicate
...
...
10
11
18
18
19
19
...
MultiSite Distributed Development
US Site
Europe Site
usa_branch
usa_branch
...
...
10
0
11
10
0
...
replicate
18
19

Each site works on its own branch

Replicas are synchronized periodically
11
18
19
...
MultiSite Distributed Development
US Site
usa_branch
...
0
10
11
usa_branch
...
europe_branch
0
...
18
19
20
V2.0
Europe Site
21

Each site works on its own branch

Replicas are synchronized periodically
10
11
18
19
...
0
...
4
5
MultiSite Distributed Development
US Site
Europe Site
usa_branch
usa_branch
...
europe_branch
0
10
11
18
...
...
0
...
4
10
replicate
11
5
18
19
19
20
V2.0
21
europe_branch
0
20
replicate

Each site works on its own branch

Replicas are synchronized periodically
V2.0
21
...
0
...
4
5
Automatic Views
Architecture
41
What is CCRC?
42
ClearTeam Explorer
• Increased Developer productivity with:
•
•
•
•
•
•
Support for all four view types
Preferences and Workspace Filters
One click Deliver and Rebase
Recursive Check in
MultiSite Support
Project Lead Support for base and UCM
• Increased Team productivity with:
•
•
•
•
Integrated CQ Forms & Queries
Pending changes view
Eclipse shell-share support
Integrated Jazz based Collaborative
Development Support
A Unified Desktop Client User Interface
43
What is CCRC?
CCRC
CCLC
rcleartool
CTE
rclearmake
MVFS
rabe
abe
abe
rview_agent
CCRC WAN
Server
cleartool
Native GUIs
clearmake
CC BE
CC BE
CC BE
abe
abe
abe
MVFS
View Server
ALBD Server
Registry Server
Warning: Intentionally Incomplete!
DB Server
DB Server
DB Server
VOB Server
Promote Server
VOBRPC Server
VOBRPC Server
VOBRPC Server
44
Automatic Views – high level architecture
Non-CC apps
cat, ls, compile
rcleartool
CTE
Web view
Standard
Filesystem
MVFS
Proxy
Cleartext
Cache
rview
agent (A)
CCRC
WAN
Server
rview
agent (B)
View
private
View
private
DB
Shared
cleartext
cache
DB
CCRC
46
Automatic View Features
47
View / VOB tags in Automatic Views
• Automatic views default viewroot directory:
• Windows: R:\
• Unix: /rview
• Only views owned by user are visible in viewroot
directory
• Per-view VOB mounts
• VOB mounts part of view configuration
48
Creating an Automatic View from CTE
49
Mounting VOBs in an Automatic View
50
Automatic Views in CTE
51
Developer Workflow Productivity / Targeted Performance Improvements
Create view
Explore / read
files
Checkout
files
Checkin
files
Update view
Debug
Edit
Build
52
What’s NOT in Automatic Views?
• View access from multiple machines
• View access from multiple users
• Shareable D.O.s
• Direct access to VOB storage pools
54
Thank You
Download