subversion-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache subversion Wiki <comm...@subversion.apache.org>
Subject [Subversion Wiki] Update of "SymmetricMerge" by JulianFoad
Date Wed, 11 Apr 2012 08:21:44 GMT
Dear Wiki user,

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

The "SymmetricMerge" page has been changed by JulianFoad:
http://wiki.apache.org/subversion/SymmetricMerge?action=diff&rev1=81&rev2=82

Comment:
Tweak formatting of subtree merge example

  === Significant and Insignificant Subtree Merging ===
  Often, Subversion creates subtree mergeinfo when the user performs a merge of a subtree
(even a single file) knowing that that subtree contains all the changes that there were in
the selected revisions.  In these cases, mergeinfo on the root of the branch would be equivalent.
  
- OTOH, when the subtree contains some changes, but other changes exist outside it, that's
''significant'' subtree merge.
+ OTOH, when the subtree contains some changes, but other changes exist outside it, that's
a ''significant'' subtree merge.
  
  === Example ===
  Consider the following mergeinfo catalog:
  
-  . ^/branch: /trunk:100-110 ^/branch/A/B: /trunk/B:101-104 ^/branch/A/C: /trunk/C:104-107
+  . `^/branch:   /trunk:100-110`
+  . `^/branch/B: /trunk/B:101-104`
+  . `^/branch/C: /trunk/C:104-107`
  
- The merge 'svn merge ^/trunk@110 (into ^/branch)' would break the merge into the following
ranges: [100], [101-103], [104], [105-107], [108-110].  Each range would be treated independently,
and an actual merge will only be attempted on the subtrees that do not indicate they have
already been merged that range.  (For example, the [101-103] range would not be merged into
the ^/branch/B subtree.  It would be merged into its parents and siblings, though, just as
with 'svn up --set-depth=exclude B && svn merge -c 101:103 --disregard-mergeinfo'.)
+ The merge '`svn merge ^/trunk@110`' (into `^/branch`) would break the merge into the following
ranges: [100], [101-103], [104], [105-107], [108-110].  Each range would be treated independently,
and an actual merge will only be attempted on the subtrees that do not indicate they have
already been merged that range.  (For example, the [101-103] range would not be merged into
the `^/branch/B` subtree.  It would be merged into its parents and siblings, though, just
as with '`svn up --set-depth=exclude B && svn merge -c 101:103 --disregard-mergeinfo`'.)
  
  == Cherry-pick Merges ==
  [Note: This section is rather long, and should be considered more as  reference material
than an introduction, as it aims to set out all the  possible cases.]

Mime
View raw message