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=11&rev2=12

Comment:
Move Terminology section to its own page

  == Pitfalls & Quick Fixes ==
  The  aim here is to list things that users might do in Subversion that are  
not Right — that is, things that will not lead to consistent and useful  
results in merging later on — that could be avoided by some high-level  checks 
or by better informing the user.
  
- Using branch naming terminology from the ‘Terminology’ section below.
+ Using branch naming terminology defined in BranchingMergingTerminology.
  
   * On a ''feature branch'', attempting to merge to ''parent''  without 
“--reintegrate” is wrong, (except perhaps for a cherry-pick,  and that would be 
unusual).  Catch this case.  Possibly with hook  script?  Need awareness of 
what kind of branch ‘this’ is.
  
@@ -116, +116 @@

  
  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.
- 

Reply via email to