VCMUtility Examples
This topic presents examples of using the VCMUtility for various types of merges.
Hello World Rebase
Below are the options for the "Hello World" equivalent of a VCMUtility Rebase run:
Type Rebase Project Hello Target World
Automatic Rebase
The options file below performs the same Rebase as in the previous example, but it commits if possible and provides detailed reporting on the results:
Type Rebase Project Hello Target World CommitMerge True LockMergeConflicts Both // All of these options are set to True: AutoMergeFiles BreakLocks ReportDiffs ReportUpdates
All files are auto-merged both in content and properties. Files that are in conflict but cannot be resolved are locked in both the source and target views. Existing lock conflicts are broken if possible. If no unresolved conflicts are encountered, the session is committed. Details of both the compare phase (differences) and commit phase (updates) are reported. If the commit is successful, all VCM session temporary files are deleted.
Promote by View Label: Compare Only
The options below perform a compare-only promote of files and CRs as of a view label, saving the session in a specific session filename:
// Connection settings Server MyUserid@ProdServer:4000 PwdFile MyPassword.txt // Merge type and view configuration Type Promote Project StarDraw Source "Beta Release" SrcLabel Build-4.0_142 // Select all files and CRs as source items include /* +all include / +all CRs // Compare-only, report, and save with a specific session filename CommitMerge False save Build-4.0_142-Promote ReportDiffs //Miscellaneous options AutoMergeFiles True AutoMergeProperties False // leave these as conflicts and merge manually LockMergeConflicts Target
Promote by View Label: Merge
The VCM utility command-line below resumes the session saved in the previous example and commits it, assuming no new conflicts have occurred.
VCMUtility -resume Build-4.0_142-Promote -CommitMerge -ReportUpdates