Background Problem Statement
- SCM build processing based on transaction processing paradigm
- Paradigm: copy (iterate), build, distribute
- A “build request” transaction is a packet of files (new or modified) sent by a developer to SCM for incorporation in one or more SCM baselines
- Separate build requests are grouped by SCM into build batches before starting “build engine” compile/link processing
- 20 to 50 build request transactions per day on large systems
- Supported by sophisticated build request and build processing systems
- Differences with ClearCase paradigm
- Developer and SCM file spaces no longer distinct at file system level
- File space separation compressed to version trees within complex “elements”
- Meta-data (labels and branches) used to carve up version space within elements
- Source code control structure identical to build structure
- Derived object spaces “private” rather than part of globally visible directory trees
- Two users see different content at same path, dependent on view
- Derived object cannot be generated at same path at which it is stored as an element