You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by Apache Wiki <wi...@apache.org> on 2011/10/06 17:53:54 UTC

[Subversion Wiki] Update of "SimpleAndSafeMerges" by JulianFoad

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Subversion Wiki" for change notification.

The "SimpleAndSafeMerges" page has been changed by JulianFoad:
http://wiki.apache.org/subversion/SimpleAndSafeMerges?action=diff&rev1=6&rev2=7

  
  Discussed in [[http://svn.haxx.se/dev/archive-2011-09/0201.shtml|this email thread]].
  
+ == Terminology - A Typical Branching and Merging Policy ==
+ A  simple and useful branching policy.  This is presented here just in  order to give a framework of terminology for describing guidance  measures for merging, not as a restriction on what is to be supported. Types of merge: * ''sync'' or ''catch-up'': a merge that pulls into the target branch all source-branch changes that we “don’t yet have” in the target branch.
+ 
+  * ''cherry-pick'': a merge that pulls in one or more specified changes from the source branch.
+  * ''reintegrate'': similar to a ''sync'' merge, but intended to be used in the other direction
+ 
+ Assume a partial ordering among branches, such that any given branch has (0 or more) ''Feature Branches'' that are less stable than it, and ''Release Branches'' that are more stable than it, and it is considered the ''parent'' of each of those.  A merge may be performed between a ''parent'' branch and one of its immediate ''Feature'' or ''Release'' branches, and nowhere else. * A merge to a ''Feature Branch'' from its ''parent'' is normally a ''catch-up''.
+ 
+  * A merge from a ''Feature Branch'' to its ''parent'' is normally a ''reintegrate''.
+  * A merge to a ''Release Branch'' from its ''parent'' is normally a ''cherry-pick''.
+  * A merge from a ''Release Branch'' to its parent could be a ''catch-up'' or a ''cherry-pick''. (### Does a catch-up work properly if you’ve done cherry-picks in the other direction? Might not.)
+ 
+ A merge to or from a ''Release Branch'' may be forbidden in one direction, according to local policy.
+