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

Re: Problems merging the reintegrate-improvements branch [was: 1.5.x currently doesn't build]

From: Paul Burba <ptburba_at_gmail.com>
Date: Thu, 18 Dec 2008 11:08:58 -0500

On Thu, Dec 18, 2008 at 8:59 AM, Julian Foad <julianfoad_at_btopenworld.com> wrote:
> Paul Burba wrote:
>> Done. I've locally reintegrated the 1.5.x-reintegrate-improvements to
>> 1.5.x and ran the [FSFS]x[LOCAL] tests with no failures.
>>
>> One oddity, when I did the merge I got an unexpected conflict on merge.c:
>>
>> >svn info
>> Path: .
>> URL: http://svn.collab.net/repos/svn/branches/1.5.x
>> Repository Root: http://svn.collab.net/repos/svn
>> Repository UUID: 612f8ebc-c883-4be0-9ee0-a4e9ef946e3a
>> Revision: 34802
>> Node Kind: directory
>> Schedule: normal
>> Last Changed Author: hwright
>> Last Changed Rev: 34799
>> Last Changed Date: 2008-12-17 15:20:41 -0500 (Wed, 17 Dec 2008)
>>
>> >svn merge --reintegrate http://svn.collab.net/repos/svn/branches/1.5.x-reintegrate-improvements .
>> --- Merging differences between repository URLs into '.':
>> U STATUS
>> G www\images\subversion-diagram.png
>> G www\images\subversion_logo-200x173.png
>> G www\images\subversion_logo_hor-468x64.png
>> G www\images\subversion_logo-384x332.png
>> G COMMITTERS
>> G notes\tree-conflicts\scratch-pad.txt
>> U subversion\libsvn_fs_base\tree.c
>> U subversion\libsvn_fs_base\fs.c
>> U subversion\include\svn_mergeinfo.h
>> U subversion\include\svn_client.h
>> U subversion\include\private\svn_mergeinfo_private.h
>> G subversion\include\private
>> UG subversion\libsvn_wc\adm_ops.c
>> U subversion\libsvn_subr\mergeinfo.c
>> G subversion\libsvn_subr
>> Conflict discovered in 'subversion/libsvn_client/merge.c'.
>> Select: (p) postpone, (df) diff-full, (e) edit,
>> (mc) mine-conflict, (tc) theirs-conflict,
>> (s) show all options: p
>> CG subversion\libsvn_client\merge.c
>> U subversion\libsvn_client\ra.c
>> U subversion\libsvn_client\copy.c
>> G subversion\bindings\swig
>> U subversion\mod_dav_svn\mirror.c
>> U subversion\tests\cmdline\revert_tests.py
>> U subversion\tests\cmdline\copy_tests.py
>> U subversion\tests\cmdline\update_tests.py
>> UG subversion\tests\cmdline\svntest\actions.py
>> U subversion\tests\cmdline\merge_tests.py
>> U subversion\libsvn_ra_svn\cyrus_auth.c
>> U subversion\libsvn_ra_svn\internal_auth.c
>> U subversion\libsvn_ra_svn\ra_svn.h
>> G CHANGES
>> G .
>> Summary of conflicts:
>> Text conflicts: 1
>>
>> The conflict was on the whole file:
>>
>> >svn diff subversion\libsvn_client\merge.c
>> Index: subversion/libsvn_client/merge.c
>> ===================================================================
>> --- subversion/libsvn_client/merge.c (revision 34802)
>> +++ subversion/libsvn_client/merge.c (working copy)
>> @@ -1,3 +1,4 @@
>> +<<<<<<< .working
>> /*
>> * merge.c: merging
>> *
>> @@ -7086,3 +7087,7473 @@
>> target_wcpath, recurse, ignore_ancestry, force,
>> dry_run, NULL, ctx, pool);
>> }
>> +=======
>> +/*
>> + * merge.c: merging
>>
>> <SNIP the whole right side file added>
>>
>> + target_wcpath, recurse, ignore_ancestry, force,
>> + dry_run, NULL, ctx, pool);
>> +}
>> +>>>>>>> .merge-right.r34802
>
> Paul,
>
> When I tried to reproduce, I got some odd results:
>
> (I reverted to a clean WC before each of these attempts.)
>
> [[[
> $ svn-trunk info
> Path: .
> URL: http://svn.collab.net/repos/svn/branches/1.5.x
> Repository Root: http://svn.collab.net/repos/svn
> Repository UUID: 612f8ebc-c883-4be0-9ee0-a4e9ef946e3a
> Revision: 34802
> Node Kind: directory
> Schedule: normal
> Last Changed Author: hwright
> Last Changed Rev: 34799
> Last Changed Date: 2008-12-17 20:20:41 +0000 (Wed, 17 Dec 2008)
>
>
> $ svn-trunk merge --reintegrate $SVN_REPOS/branches/1.5.x-reintegrate-improvements_at_34802 .
> --- Merging differences between repository URLs into '.':
> G www/images/subversion-diagram.png
> G www/images/subversion_logo-200x173.png
> G www/images/subversion_logo_hor-468x64.png
> G www/images/subversion_logo-384x332.png
> G COMMITTERS
> G notes/tree-conflicts/scratch-pad.txt
> U subversion/include/private/svn_mergeinfo_private.h
> G subversion/include/private
> G subversion/libsvn_wc/adm_ops.c
> U subversion/libsvn_subr/mergeinfo.c
> G subversion/libsvn_subr
> UG subversion/libsvn_client/merge.c
> G subversion/bindings/swig
> G subversion/tests/cmdline/svntest/actions.py
> U subversion/tests/cmdline/merge_tests.py
> G CHANGES
> G .

I'm not sure whether to be happy or sad that you don't get that odd
conflict on merge.c (but that is another topic).

> $ svn-1.5.4 merge --reintegrate $SVN_REPOS/branches/1.5.x-reintegrate-improvements .
> svn: Cannot reintegrate from 'http://svn.collab.net/repos/svn/branches/1.5.x-reintegrate-improvements' yet:
> Some revisions have been merged under it that have not been merged
> into the reintegration target; merge them first, then retry.

Agreed, this is expected with 1.5.4.

> $ svn-r-i merge --reintegrate $SVN_REPOS/branches/1.5.x-reintegrate-improvements/@34802 .
> /home/julianfoad/src/subversion-grey/subversion/libsvn_ra_neon/util.c:592: (apr_err=175002)
> svn: REPORT of '/repos/svn/!svn/bc/34802': 200 OK (http://svn.collab.net)

Using http://svn.collab.net/repos/svn/branches/1.5.x-reintegrate-improvements@34082
I don't get any error:

1.5.x-r-i.34802.DEBUG>svn merge --reintegrate
http://svn.collab.net/repos/svn/branches/1.5.x-reintegrate-improvements/@34802
.
--- Merging differences between repository URLs into '.':
U STATUS
 G www\images\subversion-diagram.png
 G www\images\subversion_logo-200x173.png
 G www\images\subversion_logo_hor-468x64.png
 G www\images\subversion_logo-384x332.png
 G COMMITTERS
 G notes\tree-conflicts\scratch-pad.txt
U subversion\libsvn_fs_base\tree.c
U subversion\libsvn_fs_base\fs.c
U subversion\include\svn_mergeinfo.h
U subversion\include\svn_client.h
U subversion\include\private\svn_mergeinfo_private.h
 G subversion\include\private
UG subversion\libsvn_wc\adm_ops.c
U subversion\libsvn_subr\mergeinfo.c
 G subversion\libsvn_subr
Conflict discovered in 'subversion/libsvn_client/merge.c'.
Select: (p) postpone, (df) diff-full, (e) edit,
        (h) help for more options: p
CG subversion\libsvn_client\merge.c
U subversion\libsvn_client\ra.c
U subversion\libsvn_client\copy.c
 G subversion\bindings\swig
U subversion\mod_dav_svn\mirror.c
U subversion\tests\cmdline\revert_tests.py
U subversion\tests\cmdline\copy_tests.py
U subversion\tests\cmdline\update_tests.py
UG subversion\tests\cmdline\svntest\actions.py
U subversion\tests\cmdline\merge_tests.py
U subversion\libsvn_ra_svn\cyrus_auth.c
U subversion\libsvn_ra_svn\internal_auth.c
U subversion\libsvn_ra_svn\ra_svn.h
 G CHANGES
 G .

> $ svn-r-i merge --reintegrate $SVN_REPOS/branches/1.5.x-reintegrate-improvements/subversion/libsvn_client/merge.c subversion/libsvn_client/merge.c
> --- Merging differences between repository URLs into 'subversion/libsvn_client/merge.c':
> UG subversion/libsvn_client/merge.c
>
> $ svn-trunk merge --reintegrate $SVN_REPOS/branches/1.5.x-reintegrate-improvements .
> /home/julianfoad/src/subversion-trunk/subversion/libsvn_ra_neon/util.c:603: (apr_err=175002)
> svn: REPORT of '/repos/svn/!svn/bc/34802': 200 OK (http://svn.collab.net)

Also works for me,

trunk.34721.DEBUG>svn merge --reintegrate
http://svn.collab.net/repos/svn/branches/1.5.x-reintegrate-improvements/@34802
.
--- Merging differences between repository URLs into '.':
U STATUS
 G www\images\subversion-diagram.png
 G www\images\subversion_logo-200x173.png
 G www\images\subversion_logo_hor-468x64.png
 G www\images\subversion_logo-384x332.png
 G COMMITTERS
 G notes\tree-conflicts\scratch-pad.txt
U subversion\libsvn_fs_base\tree.c
U subversion\libsvn_fs_base\fs.c
U subversion\include\svn_mergeinfo.h
U subversion\include\svn_client.h
U subversion\include\private\svn_mergeinfo_private.h
 G subversion\include\private
UG subversion\libsvn_wc\adm_ops.c
U subversion\libsvn_subr\mergeinfo.c
 G subversion\libsvn_subr
Conflict discovered in 'subversion/libsvn_client/merge.c'.
Select: (p) postpone, (df) diff-full, (e) edit,
        (mc) mine-conflict, (tc) theirs-conflict,
        (s) show all options: p
CG subversion\libsvn_client\merge.c
U subversion\libsvn_client\ra.c
U subversion\libsvn_client\copy.c
 G subversion\bindings\swig
U subversion\mod_dav_svn\mirror.c
U subversion\tests\cmdline\revert_tests.py
U subversion\tests\cmdline\copy_tests.py
U subversion\tests\cmdline\update_tests.py
UG subversion\tests\cmdline\svntest\actions.py
U subversion\tests\cmdline\merge_tests.py
U subversion\libsvn_ra_svn\cyrus_auth.c
U subversion\libsvn_ra_svn\internal_auth.c
U subversion\libsvn_ra_svn\ra_svn.h
 G CHANGES
 G .
Summary of conflicts:
  Text conflicts: 1

> $ svn-trunk merge --reintegrate $SVN_REPOS/branches/1.5.x-reintegrate-improvements/subversion/libsvn_client_at_34802 subversion/libsvn_client
> /home/julianfoad/src/subversion-red/subversion/libsvn_client/merge.c:6723: (apr_err=195016)
> svn: Cannot reintegrate from 'http://svn.collab.net/repos/svn/branches/1.5.x-reintegrate-improvements/subversion/libsvn_client' yet:
> Some revisions have been merged under it that have not been merged
> into the reintegration target; merge them first, then retry.

Are you sure that svn-trunk is trunk_at_34721? That error message was
changed in r34091.

> $ svn-1.5.x merge --reintegrate $SVN_REPOS/branches/1.5.x-reintegrate-improvements_at_34802 .
> /home/julianfoad/src/subversion-red/subversion/libsvn_client/merge.c:6723: (apr_err=195016)
> svn: Cannot reintegrate from 'http://svn.collab.net/repos/svn/branches/1.5.x-reintegrate-improvements' yet:
> Some revisions have been merged under it that have not been merged
> into the reintegration target; merge them first, then retry.
>
> $ svn-1.5.x merge --reintegrate $SVN_REPOS/branches/1.5.x-reintegrate-improvements .
> /home/julianfoad/src/subversion-red/subversion/libsvn_client/merge.c:6723: (apr_err=195016)
> svn: Cannot reintegrate from 'http://svn.collab.net/repos/svn/branches/1.5.x-reintegrate-improvements' yet:
> Some revisions have been merged under it that have not been merged
> into the reintegration target; merge them first, then retry.
>
> $ svn-1.5.x merge --reintegrate $SVN_REPOS/branches/1.5.x-reintegrate-improvements/subversion/libsvn_client subversion/libsvn_client
> /home/julianfoad/src/subversion-red/subversion/libsvn_client/merge.c:6723: (apr_err=195016)
> svn: Cannot reintegrate from 'http://svn.collab.net/repos/svn/branches/1.5.x-reintegrate-improvements/subversion/libsvn_client' yet:
> Some revisions have been merged under it that have not been merged
> into the reintegration target; merge them first, then retry.
>
> ]]]
>
> The 1.5.4 bail-out is not surprising to me, but the "200 OK" "errors" are troubling.
>
> Local WC is /branches/1.5.x_at_34802
> svn-1.5.4 is v1.5.4
> svn-r-i is /branches/1.5.x-reintegrate-improvements_at_34802
> svn-trunk is /trunk_at_34721
>
> Which version of svn did you use?
>
> A couple of fixes to merging EOL-style changes were recently merged into
> 1.5.x at r34799. What you saw looks like it might be an EOL-style bug.
>
> - Julian

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=986777
Received on 2008-12-18 17:11:26 CET

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