r1 - 22 Jan 2008 - 14:26:36 - MarcGirodCmWiki  >  CM Web  >  ConfigurationManagement > SoftwareConfigurationManagement > MarcGirod  >  ImplicitBranching

Implicit Branching

Mercurial comes with a fresh approach to branching, at least to presenting it. You may not be aware of branching, until you pull somebody else's version of the file you modified, and face merging. I.e. you notice at that point that you had been branching implicitly. And you don't need to care otherwise—no need to branch back.

This presentation is indeed so simple, as to feel right. Branching is natural, and all the fuss around it is only hysterical. Merging is only needed when it makes sense, and there is never any reason for artificial trivial merges.

The question which naturally pops up in the context of Mercurial, is how do you know what to pull. This strikes me as a natural direction for enhancement in the model. Currently as I understand it, this is left to off-band (outside the SCM) communications, and top-down from the sources.

The bottom-up model of managing derived objects should help dramatically there. It is at the level of binaries (usually executables) that one might want to hear of and test changes, so as to pull at once all the sources needed to produce one after having experimented its benefits.

-- MarcGirod - 22 Jan 2008

Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r1 | More topic actions | key Log In
 
Copyright © 1998-2008 CM Crossroads LLC
Ideas, requests, problems regarding CmWiki?? Send feedback