Sub-tree Merges
It is recommended to perform a merge on the
whole working copy (select its root directory when triggering the operation) to avoid
sub-tree mergeinfo. Sub-tree mergeinfo is the
mergeinfo recorded to describe a sub-tree merge. That is, a merge
done directly to a child of a branch root that might be needed in certain situations. There is
nothing special about sub-tree merges or sub-tree mergeinfo except
that the complete record of merges to a branch may not be contained solely in the
mergeinfo on the branch root and you may have to look to any sub-tree
mergeinfo to get a full accounting. Fortunately, Subversion does this for you and
rarely will you need to look for it.
Merging from Foreign
Repositories
Subversion supports merging from foreign repositories. While all merge
source URLs must point to the same repository, the merge target (from the working copy) may
come from a different repository than the sources. However, copies made in the merge source
will be transformed into plain additions in the merge target. Also,
merge-tracking is not supported for merges from foreign repositories.
Note: When
performing merges from repositories other than the one corresponding to the target item
(from the working copy), the
Ignore ancestry / Disable merge
tracking option, in the
Merge Options
wizard page, will be enabled automatically (and you cannot change
this).
General Merge Recommendations
As a recommendation, you should only merge
into clean working copies that
do not contain any of the following:
- Modifications.
- Sparse directories (all directories must be of depth infinity).
- Switched items.
Important: This recommendation becomes mandatory when performing a
reintegrate
merge operation. Also, trying to merge to mixed-revision working copies
will fail in all types of merge operations.
Remember: The merge result is only in your local working copy
and needs to be committed to the repository for it to be available to
others.