Avoid Trivial Merges
The purpose of merging is to achieve convergence, thus to reduce accidental and useless diversity.
This is in line with the motto of SCM: Share to Manage, Manage to Share.
Getting insight about resources by sharing them in multiple contexts.
Now, with systematic branching strategies, one often meets the case of so-called
trivial merges i.e. also,
copy merges -- merges in which the contents of the target happens to be identical to this of either of the two sources.
We'll claim here that this is not a good idea, and should be avoided -- that it is a valuable goal to design one's strategy in order to avoid it.
The rationale: trivial merges result into a useless duplication, an accidental diversity.
It is indifferent whether one uses either of two identical versions, therefore, this introduces a harmful noise into the dependency tree of a dependent resource. This noise will make it harder to detect real, meaningful differences.
The noise is particularly noticeable in the context of
real merges: they tend to get hidden by the trivial ones.
But the worst cost is paid with invalidating
derived objects, thus ruining any management strategy based on them.
--
MarcGirod - 12 Sep 2005