How to publish changes in place?

(Also to avoid trivial merging).

Several possible strategies, none of them without problems requiring special care:

  • Publish by renaming the branches, instead of by merging. In ClearCase, this is named chtyping the branch type. The drawback is that in ClearCase, you need to run setcs -current in every view using the brtype in its config spec.
  • Publish by labeling. In practice, e.g. in the context of ClearCase, this doesn't go without some drawbacks:
    • Labeling is relatively expensive, and slow, thus hindering the natural wish for the atomicity of publication (but chtyping branches is not perfect either). With care, one may achieve some degree of incremental labeling, in the absence of proper support in ClearCase.
    • One needs anyway to either rename away the branches, or to modify the config specs using them (but this means typically only your own).

Using either of these ways, you will promote your derived objects in the same time as you publish your sources. You will publish exactly what you have tested, and will be able to prove it in an efficient way.

These would obviously be considerations for the design of a new SCM tool.

-- MarcGirod - 12 Sep 2005



EditAttachPrint versionHistory: r3 < r2 < r1BacklinksRaw ViewRaw editMore topic actions