Dear Wiki user,

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

The "MergeInfoDisplay" page has been changed by JulianFoad:
http://wiki.apache.org/subversion/MergeInfoDisplay?action=diff&rev1=4&rev2=5

  Using branch naming terminology from the ‘Terminology’ section below.
  
   * 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.
+ 
   * Catch other cases from the ‘Branching and Merging Policy’ section below.
+ 
   * On  any branch, a reverse-merge of a merge in this branch’s own history  
will not do what we expect, I think, in that it won’t be recorded. The  
correctness of that depends on whether the user’s intention was to  temporarily 
roll back that merge (but still intend to do it later) or to  record that 
undoing as a deliberate and permanent change that should be  carried through to 
other branches. The other way to roll back a merge  is to reverse-merge the 
original changes from the source branch. That  gives the corresponding 
mergeinfo update, but it has at least two  significant drawbacks: it will hit 
all the conflicts that were hit and  resolved when it was merged the first 
time; and the exact reverse merge  to perform is non-obvious unless the 
original merge was from a trivial  source revision-range.
+ 
   * If you cherry-pick from a ''feature branch''  to its trunk, that’s valid 
for an original change but not if the change  that you’re picking is itself a 
merge (at least if it’s a merge from  trunk). We can detect this by seeing 
whether that change includes a  mergeinfo diff.
  
  '''Common misconceptions'''
  
   * That merging from branch A to branch B will make B look like A.
+ 
   * A  client said “I merged A to B, then modified B, and now need to revert  
the change on B; maybe I could do that by merging A to B again”.  In  that 
case, I think the merge from A to B was a “reintegrate” which does  indeed 
pretty much make B look like A.  (Source: WD support ticket  #3013.)
  
   * To help avoid this, ‘merge’ should display messages about what it’s doing, 
using terminology that makes clear that ''changes'' are being merged rather 
than ''state''.
@@ -72, +76 @@

  Merged from ^/trunk:
     Origin-1214, 1216-1234
  }}}
+ 
   * Automatic identification of the ''parent'' branch:
   {{{
  $ svn mergeinfo
@@ -84, +89 @@

  $ svn mergeinfo
  svn: No parent branch configured for ^/branches/B
  }}}
+ 
   * When no relationship is configured between this and the specified branch: 
<<BR>>
   {{{
  $ svn mergeinfo ^/branches/B2

Reply via email to