Yes, this is exactly what I wanted to do and you've explained nicely why
I've been unable to do it. Thank you for pointing out that issue #1093
addresses this problem.
Derek
-----Original Message-----
From: Ben Collins-Sussman [mailto:sussman@collab.net]
Sent: March 30, 2004 1:22 PM
To: Derek Mahar
Cc: users@subversion.tigris.org
Subject: RE: Merge problem after changing directory tree structure
On Tue, 2004-03-30 at 12:10, Derek Mahar wrote:
> Given the following, how do I merge directory 'new' on branch1 into a
> working copy of $REPOS/project/b/trunk? Notice that *after* I created
> branch1, I renamed ancestor directory 'a' to 'b'.
>
> svnadmin create /home/svn/test REPOS=https://localhost/subversion/test
> mkdir project
> mkdir -p project/a/trunk
> mkdir -p project/a/branches
> svn import -m 1 $REPOS
> svn copy -m 2 $REPOS/project/a/trunk $REPOS/project/a/branches/branch1
> svn mkdir -m 3 $REPOS/project/a/branches/branch1/new
> svn rename -m 4 $REPOS/project/a $REPOS/project/b
> svn co $REPOS/project/b/trunk work
> cd work
> svn merge -r 3:HEAD $REPOS/project/b/branches/branch1
> Output:
> svn: REPORT request failed on '/subversion/test/!svn/vcc/default'
I assume you want the merge to (a) create the 'new' directory, and (b)
merge every change that has ever happened in that directory, right?
svn merge $REPOS/project/a/branches/branch1@2 \
$REPOS/project/b/branches/branch1@HEAD
In other words, you're asking the server to compare two directories: a
snapshot of 'branch1' when it was first created (or at least the way it
looked just before you added the new directory to it), and a snapshot of
the same directory as it looks in HEAD.
Like 'svn diff', 'svn merge' doesn't know how automatically follow copy
history. This is issue #1093, one of our high-priority bugs. In a
perfect world, you'd be able to run
svn [diff|merge] -r2:HEAD $REPOS/project/b/branches/branch1
...and diff/merge would just automatically "know" that the branch1
directory was at a different location in r2.
NOTICE: This email contains privileged and confidential information and is intended only for the individual to whom it is addressed. If you are not the named addressee, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately by e-mail if you have received this transmission by mistake and delete this communication from your system. E-mail transmission cannot be guaranteed to be secured or error-free as information could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses.
AVIS: Le présent courriel contient des renseignements de nature privilégiée et confidentielle et n’est destiné qu'à la personne à qui il est adressé. Si vous n’êtes pas le destinataire prévu, vous êtes par les présentes avisés que toute diffusion, distribution ou reproduction de cette communication est strictement interdite. Si vous avez reçu ce courriel par erreur, veuillez en aviser immédiatement l’expéditeur et le supprimer de votre système. Notez que la transmission de courriel ne peut en aucun cas être considéré comme inviolable ou exempt d’erreur puisque les informations qu’il contient pourraient être interceptés, corrompues, perdues, détruites, arrivées en retard ou incomplètes ou contenir un virus.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Tue Mar 30 21:07:21 2004