Avoid Cascading away indefinitely
If we
avoid to merge back to where we branched off, i.e. to either
/main or an
integration branch, it seems that we would
cascade indefinitely away,
i.e. keep creating new branches under one another.
This is intuitively a bad idea,
and indeed, one meets
system limitations fairly soon with such a scheme.
One first notices a degradation in performance because of the length of the version extended names,
and eventually one meets hard limits, making the creation of new branches fail.
This must thus be
worked around.
Other cascading schemes
Note that we are not concerned here with other cascading schemes,
e.g. enforcing hierarchical layouts in the version trees (e.g. with
site or
project branches).
These have roughly no other benefits than cosmetic, and on the contrary offer some real drawbacks, esp. with MultiSite:
when needing to create a
leaf branch in the absence of some intermediate level, one notices that creating the intermediate level of branches
(which is nicely supported in the config spec syntax) will only work on the site mastering their types,
which has thus to be the same as this mastering the type of the
leaf branches—a totally artificial constraint.
In short, such schemes reintroduce the kind of bottlenecks
branches were aimed are removing!
--
MarcGirod - 26 Sep 2007