On Mon, Feb 21, 2000 at 09:47:21AM -0500, Noel L Yap wrote: > Possibly off topic. Take a look at > http://www.enteract.com/~bradapp/acme/plop98/scm-pats-intro.html, you might get That URL should probably be changed to: http://www.enteract.com/~bradapp/acme/branching One "pattern" the authors and I had debated whether or not to include in that paper was something I called an "export lock". When a developer merges the latest stuff from the codeline into their sandbox, we called that a "sync" or "refresh" or an "import" or "rebase" with the codeline. When a developer merged their changes out to commit them to the codeline, we called that an "export" or "commit" or "publish" operation. I once worked on an SCCS-based system that had an "export lock" for each codeline. When you started export your changes by merging them to the codeline, the "export" command would first try to acquire an export lock on your behalf. If it couldn't, you had to wait till it was free. If it could get the export lock, then you merged all your changes, and then released the lock. If something went awry or needed further investigation before you finished the export, then you could do one of two things: (a) you could hold onto the export lock while you resolved your issues; thus you weren't trying to hit a moving target (but might have to fend off angry co-workers if you didn't resolve things in a timely manner); or (b) you could decide to relinquish the export lock manually, and let others have a chance while you resolved your conflicts (but then once you were ready to try exporting again, there might be more changes to reconcile against). Note that this was an export-only lock. It did not stop others from checking out files, nor did it stop them from checking them back in on their own branch, but no one else could checkin to the codeline branch while you held the lock. Later, when trying to "excavate" recurring SCM patterns, I found that this sort of "export lock" was a commonly used best-practice in many other shops doing parallel development with a wide variety of differing tools. -- Brad Appleton <[EMAIL PROTECTED]> http://www.enteract.com/~bradapp/ "And miles to go before I sleep." -- Robert Frost
