- Introduction
- Method 1: Shared Directory
- Method 2: Shared Directory Plus Lock
- Method 3: Mainline Plus Sandboxes
- Method 4: Mainline Plus Sandboxes Plus Synchronization
- A Few More Observations
- Conclusion
Method 4: Mainline Plus Sandboxes Plus Synchronization
Some big changes may require several integrations before the change is complete; this can make our integration tricky. You can address this potential problem by adding a synchronization operation that brings others' changes into your sandbox.
Synchronization can be mixed in while you're doing your changes:
Synchronize:
- Lock.
- Integrate mainline into sandbox.
- Unlock.
Some source-control systems go further, providing a "preview" that identifies the files that would require integration, without actually bringing the changed files to the sandbox.
With this refinement, you get the following advantages:
Programmers can still work in parallel.
Integration is easier.
Integration is still transactional.