Presentation is loading. Please wait.

Presentation is loading. Please wait.

ClearCase Basics XML presentation.

Similar presentations


Presentation on theme: "ClearCase Basics XML presentation."— Presentation transcript:

1 ClearCase Basics XML presentation

2 Contents Introduction ClearCase Concepts Simple ClearCase Use Case
ClearCase GUI and CLI Version Control of Directories Config Spec Labels, Branches, Merge Comparing Files and Folder versions Version extended pathnames XML presentation

3 Introduction – The CM Nightmare
Foo.old Foo.bak C:\dev\new\Foo.c Foo.c include header2.h ………….. Foo.c include head.h ………….. Foo.c include header.h when………….. C:\dev\Foo.c Foo.c include header.h hello………….. Which of these went into release 2? Which of these has bug 34 corrected? Who made that change on line 54? Where are Joe’s changes? XML presentation

4 Introduction – ClearCase basic Functions
Version Control VOB Workspace Management View Process Control Trigger Release Management Label, attribute src/ bar.c foo.c foo.h REL1.0 TESTED=”yes” XML presentation

5 ClearCase Concepts some keywords
VOB - Version Object Base View – Workspace Element - file or directory Branch – A way to make parallel development possible. Label – Tag Attribute - Name/value pair XML presentation

6 ClearCase Concepts – A VOB is…
Version Object Base A file system where ClearCase stores all version controlled files and directories. Contents of a VOB is accessed using views A VOB is visible on a client if mounted XML presentation

7 ClearCase Concepts – An Element is…
A file or a directory that is version controlled in ClearCase. Each element has a version tree. XML presentation

8 ClearCase Concepts – A Branch is…
A way of making parallel development possible Used to organize the different versions of files and directories An object that specifies a linear sequence of versions of an element The entire set of an elements versions and branches are called a versiontree. XML presentation

9 ClearCase Concepts – A Version Tree
XML presentation

10 ClearCase Concepts – A View is…
A workspace Selects one version of each element in every mounted/selected VOB, presented in a directory structure. Two types of Views Dynamic Snapshot XML presentation

11 ClearCase Concepts – Attribute and label is
Label – is a ”tag” to mark certain versions of a file, directory or a hole ”product structure”. E.g. to ”freeze” code at a specific release. Attribute – a name/value pair used to describe a ClearCase object. E.g. TESTED=”yes” XML presentation

12 ClearCase Concepts – Elements in a VOB
Public class { Public void… getA() - } Public class { Public void… Int getA() - } mod.java source Public class { Public void… Int getA(int i) Int getB() - } XML presentation

13 ClearCase Concepts – VOB & View
Workspace View private storage Visible versions are filtered by config spec rules Config Spec VOB Checked out version XML presentation

14 View Configuration Config 1 mod.java source Config 2 XML presentation

15 Working a view Checking out a file
Actually creates a copy in the view Undo Checkout for file, can leave a *.keep file as a view private file. XML presentation

16 Simple ClearCase Use Case
Access ClearCase: Start View, Mount VOB Check-out file Mark and right click Checkout Foo.c include header.h ………….. Edit file Checkin File Mark and right click Checkin XML presentation

17 Simple ClearCase Use Case #1
REL1 Foo.c 3 4 1 2 REL2 VOB Jane’s View Joe’s View Bar.c 1 2 REL2 XML presentation

18 Simple ClearCase Use Case #2
REL1 Foo.c 3 4 1 2 REL2 VOB Jane’s View Joe’s View Checkout Bar.c 1 2 REL2 XML presentation

19 Simple ClearCase Use Case #3
REL1 Foo.c 3 4 1 2 REL2 VOB Jane’s View Joe’s View Edit file Foo.c include header.h ………….. Bar.c 1 2 REL2 XML presentation

20 Simple ClearCase Use Case #4
REL1 Foo.c 3 4 1 2 REL2 VOB Jane’s View Joe’s View Foo.o Compile Foo.exe Foo.c include header.h ………….. Bar.c 1 2 REL2 XML presentation

21 Simple ClearCase Use Case #5
REL1 Foo.c 3 4 1 2 REL2 VOB Jane’s View Joe’s View Foo.o Checkin file Foo.exe Bar.c 1 2 REL2 XML presentation

22 Simple ClearCase Use Case #6
REL1 Foo.c 3 4 1 2 REL2 VOB Jane’s View Joe’s View Foo.o Checkin file Foo.exe 5 Bar.c 1 2 REL2 XML presentation

23 Simple ClearCase Use Case #7
REL1 Foo.c 3 4 1 2 REL2 VOB Jane’s View Joe’s View Foo.o Foo.exe 5 Bar.c 1 2 REL2 XML presentation

24 Working in ClearCase ClearCase Explorer Windows Explorer
ClearCase CLI: cleartool Tool integration XML presentation

25 Windows Explorer The Windows Explorer is used to work in ClearCase
Access files NO ClearCase move NO ClearCase remove NO ClearCase rename Entire filesystem XML presentation

26 ClearCase Explorer Use the ClearCase explorer to work in ClearCase:
Access files ClearCase move ClearCase rename ClearCase remove XML presentation

27 ClearCase GUI Menues Context menu ToolBox Help XML presentation

28 ClearCase GUI View VOB Version Tree Elements XML presentation

29 ClearCase CLI interface:cleartool
Same Syntax as UNIX ClearCase 1 XML presentation

30 Working in a view Storing files in a view
Does not share these files to everybody working in the VOB. These files are View-private and only seen by those working in that particular view. Not seen by others until they are put under source control XML presentation

31 Creating and Changing Elements
Version controlled elements are created using ”Add to source control” command In order to edit an element, it has to be “Checked Out” Changes are committed using the “Check in” command XML presentation

32 Find Checkouts In order to find checked out elements XML presentation

33 ClearCase GUI – Version Tree
element * CHECKEDOUT element * \main\LATEST XML presentation

34 Version tree – How to look at other version
The eye shows which version is selected in view To look at other version mark it and use the Windows ”Send To” menu XML presentation

35 Version Control of Directories
When is a new directory version created? Adding a new element Removing an element Renaming an element Moving an element XML presentation

36 Version Control of Directories
ClearCase automatically checks out/in the directory when using the Windows GUI:s. Example: Moving a file from ClearCase to ConfigSpec Drag and drop ClearCase ConfigSpec 2 3 Added config.cs 5 6 Removed config.cs XML presentation

37 The Config Spec Element type Filename Version Selector Element type
element * CHECKEDOUT element * /main/LATEST Element type E.g. Element (= all element types) , element -file , element -directory Filename Pathname to file: \project_vob\src\hello.c Pathname pattern: * or \project_vob\... Version Selector /main/4, /main/LATEST, /main/br1/LATEST, BUILD_45, RELEASE2 XML presentation

38 The Config Spec XML presentation element * CHECKEDOUT
element *.doc /main/LATEST element *.vsd /main/LATEST element *.mmap /main/LATEST element *.ppt /main/LATEST element *.mdl /main/LATEST element *.pdf /main/LATEST element *.xls /main/LATEST element *.zip /main/LATEST element *.exe /main/LATEST element .../ReqPro/... /main/LATEST element .../tools/clearcase/... /main/LATEST element ".../NPP Project/..." /main/LATEST element ".../NPP System/1_Business Modeling/..." /main/LATEST element ".../NPP System/2_Requirements/..." /main/LATEST element ".../NPP System/3_Design and Usability/..." /main/LATEST element ".../NPP System/4_Analysis and Design/..." /main/LATEST element ".../NPP System/6_Test/..." /main/LATEST element ".../NPP System/8_Enviroment/..." /main/LATEST element ".../NPP System/9_Config and Change Mgmt/..." main/LATEST element * CLEARCASE_CURRENT -nocheckout element * BUILD_SCRIPTS_CURRENT -nocheckout element * /main/npp_got_rel1/LATEST element * /main/LATEST -mkbranch npp_got_rel1 The Config Spec XML presentation

39 Setting the Config Spec
To set the Config Spec in ClearCase you can use the command line, the GUI or script. The command line can be used to read an existing text file or to edit it manually. The GUI is used to edit it manually. XML presentation

40 Setting the Config Spec – the GUI
Select the Config Spec tab In ClearCase Explorer Right-click on the view and select properties of view And press Edit When done editing save your changes by pressing OK XML presentation

41 Setting the Config Spec – the cmd
For editing an existing Config Spec use cleartool edcs An tmp file is opened where you can edit the Config Spec. When done, close the tmp file and answer “y” in the cmd if you like to set the new Config Spec XML presentation

42 Setting the Config Spec – the cmd
cleartool setcs is a good command to use if you for example have a text file with the Config spec to use. You just write cleartool setcs path_to_file_to_use.txt XML presentation

43 A Label… Is a user-defined name that can be attached to a version.
Identify specific versions of elements Can be used in config spec rules to identify branching points or to mark all versions that where used in a build. XML presentation

44 Apply Label XML presentation

45 Apply Label Select your view Press Next XML presentation

46 Select where to apply the label
Apply Label Select where to apply the label Press Add>> Press Next XML presentation

47 Browse for the label you would like to apply
Apply Label Browse for the label you would like to apply XML presentation

48 Select which label to apply
Apply Label Select which label to apply Or create a new label NOTE: Remember that label names shall be all UPPER CASE Press OK XML presentation

49 Apply Label Press Finish XML presentation

50 Apply Label – the Version Tree
Label on specific file version can be seen in the Version Tree XML presentation

51 Apply Label – the Version Tree
A label can also be applied from the version tree Right click on the version Select Apply Label… Mark the label you would like to apply Press OK XML presentation

52 ClearCase Reports Select Labels Click on ”Element with Labels”
Select path and the Label. XML presentation

53 ClearCase reports -example
XML presentation

54 Working on branch CM/Administrator defines branch type ”branch1”
Use View with config spec like pattern below <joe_bugfix>% cleartool catcs element * CHECKEDOUT 1 element * /main/branch1/LATEST 2 element * LABEL -mkbranch branch1 3 LABEL 3 foo.c LABEL 1 bar.c foobar.c LABEL 2 XML presentation

55 How to set up the branch In order to start working on a branch this is necessary: The branch type must be defined in ClearCase. The config spec must be written so it selects the correct version and creates the branch when necessary. XML presentation

56 Working on branch - continued
Before Checkout Checkout a file After Checkout After Checkin XML presentation

57 Deliver/Merge If using parallel development, there will be need for synchronizing the content at given times. Then a merge is performed between specified branches XML presentation

58 Before Merge - Generic Version Tree
1 Base Branch 1 2 ”From” version ”To” version Merge Result XML presentation

59 Graphical merge tool Merge Result Base From To XML presentation

60 Algorithm for Automatic Merging
Base ”From” ”To” Merge Result #include ”he.h” #include ”bo.h" int main() { /* Say Hello W */ printf(”Hello World!”); printf(”Hello to World!”); return 0; return 1; return 2; } deleted deleted 1 2 Base ”From” ”To” Merge Result inserted changed ? conflict XML presentation

61 Merge Conflicts When merging, ClearCase does an automatic merge.
If the merge detects conflicts, the user needs to resolve these. XML presentation

62 Merge (1) Base version (3) Contributor 2 ”Merge to” (2) Contributor 1
Main rel_1 (1) Base version dev_1 (3) Contributor 2 ”Merge to” (2) Contributor 1 ”Merge from” Merge Result version (Checked out) XML presentation

63 Merge one File 1 TO version FROM version XML presentation

64 Result is in the checked out version
After Merge Result is in the checked out version After Merge Recompile and test... Now everybody else sees it... Checkin XML presentation

65 Comparing Versions - Text File example
Compare with previous version Changed XML presentation

66 Comparing Versions - Word Example
1 2 The same principle as ”Track changes” in Word XML presentation

67 Comparing Versions – Directory Example
1 2 File ClearCaseInstallationGuide.doc does exist File ClearCaseInstallationGuide.doc does not exist XML presentation

68 Version extended pathnames
In ClearCase you access a version of a file You can choose what version to access In order to do this, ClearCase use version extended pathnames Version extended pathnames are a way to specify exact the version of interest XML presentation

69 Version extended pathnames
Some examples: specifies an element specifies a branch specifies a branch - specifies a version XML presentation


Download ppt "ClearCase Basics XML presentation."

Similar presentations


Ads by Google