Fast (Optimized) Full Scope View Compare/Merge

Traditional full scope (i.e complete view) VCM operations are the most expansive of all VCM comparisons. This is because a full-scoped VCM must compare every single file in every folder across both source and target views, looking for matches, and differences. The compare is made each time it is run, with no knowledge of any outcome from a prior run, and regardless of whether the outcome will be affected by files which have not changed. For large views comprising 10's to 100's of thousands of files, full-scope VCM compares can run for several hours.

Fast VCM is an optimization introduced in the 16.3 release that significantly reduces the run time of a full-scoped VCM compare. This optimization may be turned on or off on a project-by-project basis, and when turned on, it requires that the project setting Create Workspace Change Packages be Enforced.

With this option enforced, the StarTeam Server will not permit any file or folder operation to be performed by any tool unless that operation is in the context of a Change Package. This includes, checkin, add, update, remove, move and rename.

Conversely, this serves as a guarantee that cross VCM full-scoped VCM sessions may rely solely upon Change Package changes between the two views, completely ignoring all other files or folders.

When a full-scoped VCM session is run between two views with change package enforcement enabled, the client checks to see if there has been at least one full-scope, regular, VCM comparison run between the two views. If it finds one, it uses the time of that last session as the benchmark to base the selection of all subsequent change packages from the source view, and runs a VCM compare with that set as the scope of the compare. If it fails to find one, it recommends the full-scoped compare.

At steady state, when the client runs optimized VCM sessions between views based only on relevant change sets, the resulting VCM compare will run extraordinarily quickly, restricted solely to the (small) groups of changes that constitute the view scope. A very large, 100,000 file view may actually reduce to, at most, a few dozen files to be processed at full scope.