From: Greg H. <ghudson@MIT.EDU> - 2006-02-27 18:01:46
|
On Mon, 2006-02-27 at 07:51 -0500, Luke Schierer wrote: > Since it blurs the line between "Developers" and "Crazy Patch Writers" > Since many of us have multiple trees anyway. > Since several of those other-tree projects would benefit from help, > such as gobjectification or the work towards msn 7. > Since most of the non-cvs scm are distributed. An alternative way to address these issues is the aggressive use of branches and branch commit access. The gcc project has the same issues, and prefers a centralized scm with branches to a distributed scm because it keeps more of gcc's development visible in one place. Subversion's branch support is better than CVS's in some important ways: branch creation is cheaper, the namespace of branches is versioned and can be pared down to active branches (old branches can be moved aside or simply removed as desired, and no information is truly lost), and merging between branches is a simpler process because of atomic revisions, even though there is no support for merge tracking or advanced tree merging. On the other side, the UI for cross-branch comparisons is a little clunky compared to CVS's, and it's harder to discover the history of a particular file or directory across all branches. Of course, you may find that distributed development suits you better, but the space of distributed SCMs is pretty fragmented at the moment, and it may be years before one arises which is feature-complete, performs acceptably, has a clear development future, works well on Windows, etc. |