Codeline Merging and Locking: Continuous Updates and Two-Phased Commits