Hello,

I've come across an issue in v1.5.1 and was wondering whether it was expected behavior or a bug. The sequence is as follows (pathnames have been changed for simplicity).

 * Create a branch from trunk:

svn copy svn://some.repo.com/repo/trunk svn://some.repo.com/repo/branches/mybranch/trunk

* Make a change to trunk in several places:

svn co svn://some.repo.com/repo/trunk trunk
vi trunk/file1.txt  # make some changes
vi trunk/subdir1/subdir2/file2.txt # make some more changes
cd trunk; svn commit -m "changes to trunk"; cd ..

 * Checkout branch using --depth and update subdir1 with --set-depth:

svn co svn://some.repo.com/repo/branches/mybranch/trunk mybranch --depth immediates
cd mybranch
svn update subdir1 --set-depth infinity
svn merge --dry-run -r1:HEAD svn://some.repo.com/repo/trunk
--- Merging r1 through r3 into '.':
U    file1.txt

Now, at this point, it seems merge does not traverse the modified depth. I would have expected subdir1/subdir2/file2.txt to be updated as well (as the update, commit and status commands all traverse to the modified depth).

In order to get the changes on subdir1, I need to cd there and call merge again:

cd mybranch/subdir1
svn merge --dry-run -r1:HEAD svn://some.repo.com/repo/trunk/subdir1
--- Merging r1 through r3 into 'subdir2':
U    file2.txt

This was performed on Ubuntu 8.04 server on an x86_64 arch running svnserve v1.5.1 and an svn v1.5.1 client on the same machine.

Regards,

Can



Reply via email to