[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Merging unrelated branches - release notes

From: Julian Foad <julianfoad_at_btopenworld.com>
Date: Thu, 20 Jun 2013 17:21:05 +0100 (BST)

C. Michael Pilato wrote:
> On 06/20/2013 09:24 AM, Johan Corveleyn wrote:
>>  I think this is an important change (improvement) that deserves
>>  mention in the release notes, rather than being burried in the huge
>>  CHANGES list. [...]
>
> [...]
>
> I agree that the feature is a good one to highlight.  Top 5 in the release?
> Puh-lease.  But it certainly deserves a release note mention, if only
> because it's a behavior change that someone might be counting on continuing
> to work.  Maybe they created a branch in the past as a parallel import
> instead of via the 'svn copy' construct, and have been merging just fine
> between that branch and another -- in 1.7, that seems to have worked fine:
[...]

OK, that sounds reasonable.  Thanks for pointing it out.  I'll add it to the "Command-line client improvements (client)" section.

How about this patch?

[[[
Index: publish/docs/release-notes/1.8.html
===================================================================
--- publish/docs/release-notes/1.8.html    (revision 1494993)
+++ publish/docs/release-notes/1.8.html    (working copy)
@@ -1863,6 +1863,28 @@

 </div>  <!-- svn-log-search -->

+<div class="h4" id="svn-merge-check-related">
+<h4>'svn merge' will refuse to merge from an unrelated branch
+  <a class="sectionlink" href="#svn-merge-check-related"
+    title="Link to this section">&para;</a>
+</h4>
+
+<p>The <tt>svn merge</tt> command without a revision range
+now checks that the source branch is related to the target branch, and
+fails if not. Branches are 'related' if their histories, when traced
+back following copies, eventually arrive at the same node. One useful
+case is when an automatic merge is attempted from the wrong level of
+subdirectory in an otherwise related branch. Example:</p>
+<pre>$ svn merge ^/trunk branch-wc/subdir
+svn: E205000: Source and target must be different but related branches
+svn: E205000: Source and target have no common ancestor: 'https://.../trunk@head' and 'branch-wc/subdir@unspecified'
+</pre>
+
+<p>It is still possible to merge from an unrelated branch by specifying a
+revision range, even a catch-all range such as <tt>1:HEAD</tt>.</p>
+
+</div>  <!-- svn-merge-check-related -->
+
 </div>  <!-- cmdline -->

 <div class="h3" id="custom-keywords">
]]]

- Julian
Received on 2013-06-20 18:22:01 CEST

This is an archived mail posted to the Subversion Dev mailing list.