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

Re: Tree conflicts display and revert (was Re: Spurious conflicted overlay)

From: Simon Large <simon.tortoisesvn_at_googlemail.com>
Date: Thu, 19 Mar 2009 21:17:52 +0000

2009/3/19 Konstantin Kolinko <knst.kolinko_at_gmail.com>:
> 2009/3/19 Stefan Küng <tortoisesvn_at_gmail.com>:
>> Simon Large wrote:
>>> Hi folks,
>>>
>>> I made a mistake when trying to merge earlier this evening. I merged
>>> trunk/doc into branches/1.6.x/doc/source and got a tree conflict on
>>> source. Oops, revert that!
>>>
>>> Now I have a conflicted overlay on source, but CfM shows no conflicts,
>>> and I am allowed to commit from the top level doc folder. Since then I
>>> upgraded to the latest nightly, and also tried cleanup, but nothing
>>> will clear the conflicted overlay. Killing TSVNcache.exe clears it for
>>> a short time, but after a while it goes back to conflicted. svn status
>>> shows no conflicts either.
>>
>> Can't reproduce this.
>> * show log for 'doc'
>> * select r15754, right-click, "merge revision to...", select
>> 1.6.x\doc\source as the target
>> * tree conflict on 1.6.x\doc\source
>> * revert
>>
>> the overlay changes back to 'normal' as it should.
>> And it stays as 'normal' even after waiting 10 minutes and two
>> 'cleanup's on 1.6.x.
>>
>> I used r15754, assuming that's the merge you attempted?
>> Maybe you merged a different way or another revision?
>>
>>
>> Stefan
>>
>> --
>>       ___
>>  oo  // \\      "De Chelonian Mobile"
>>  (_,\/ \_/ \     TortoiseSVN
>>   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
>>   /_/   \_\     http://tortoisesvn.net
>>
>> ------------------------------------------------------
>> http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=1356709
>>
>
> Hi, colleagues!
>
> CCing users (@) subversion.tigris.org
>
> I tried to reproduce the above mentioned merge and revert with svn.exe of
> TortoiseSVN 1.6 nightly build, and I am not satisfied with the following:
>
> 1). svn merge reports that there were tree conflicts,
> but svn status does not display them.
>
> Why so? Were they automatically resolved by svn merge? (Is there such
> a feature?)
>
> Is so, the merge status summary is misleading. If not, the svn status is faulty.
>
> 2). svn revert did not restore .svn/entries in one of the folders.
>
> The files slightly differ in size. Is that to be expected?
>
>
> I hope that someone having a RC can reproduce this or answer the questions.
>
>
>
> 1. Version of svn.exe
>
> I do not know what svn version TortoiseSVN nightly build uses,
> but it used to be some recent one. The svn --version reports:
>
> svn, version 1.6.0 (dev build)
>   compiled Mar 19 2009, 00:12:28
>
> You can get TortoiseSVN nightly here:
> http://nightlybuilds.tortoisesvn.net/latest/win32/
>
> Caveat: The svn.exe there cannot be run without libapr_tsvn.dll etc. dlls. I
> used 7-zip archiver to extract them from the *.msi file.
>
>
> 2. My steps:
>
>> svn checkout http://tortoisesvn.tigris.org/svn/tortoisesvn/branches/1.6.x/doc branch_doc --username guest
>
> When asked for guest's password, press Enter, - the password is empty.
>
> Note: the size of the working copy is 72 Mb
> Actually, you can checkout only /doc/source, as only that will be used.
>
>> I created a backup copy of that wc
>
>> svn merge http://tortoisesvn.tigris.org/svn/tortoisesvn/trunk/doc branch_doc/source
>
> That is, erroneous merge: merging trunk's \doc into branch's \doc\source
>
> The merge completes with the following prompt:
>
> Conflict for property 'svn:ignore' discovered on 'branch_doc/source'.
> Select: (p) postpone,
>        (mf) mine-full, (tf) theirs-full,
>        (s) show all options: p
>
> I pressed "p" to postpone
>
> Then, the following is printed:
>
>   C branch_doc\source\Subversionbook.bat
>   C branch_doc\source\tools
>   C branch_doc\source\TortoiseHelp.bat
>   C branch_doc\source\english
>  C   branch_doc\source
> Summary of conflicts:
>  Property conflicts: 1
>  Tree conflicts: 5
>
> I understand, that the 5th tree conflict is somewhere in the lines before
> the property conflict prompt?
>
>> svn status branch_doc
>
> Actual result:
>  C      branch_doc\source
> A  +    branch_doc\source\test
> A  +    branch_doc\source\test\subwcrev1.txt
> and 300 more lines with 'A +' files
>
> Expected:
> I was expecting to see indications of the tree conflicts.
>
> Could it be that they were resolved automatically during the merge,
> that is that the merge summary information is misleading?
>
> I tried
>> svn status -v branch_doc
> but that also does not display tree conflicts.
>
>> svn revert -R branch_doc
>
> Reverted 'branch_doc\source'
> Reverted 'branch_doc\source\test'
> Reverted 'branch_doc\source\Aspell'
> Reverted 'branch_doc\source\doc.build.include'
> Reverted 'branch_doc\source\xml2po-modes'
> Reverted 'branch_doc\source\doc.build.user.tmpl'
> Reverted 'branch_doc\source\backup-TortoiseSVN.net.bat'
> Reverted 'branch_doc\source\MailingListAnswers.txt'
> Reverted 'branch_doc\source\templates'
> Reverted 'branch_doc\source\logo'
> Reverted 'branch_doc\source\source'
> Reverted 'branch_doc\source\UploadDocs.bat'
> Reverted 'branch_doc\source\doc.build'
> Reverted 'branch_doc\source\issuetrackers.txt'
> Reverted 'branch_doc\source\xsl'
> Reverted 'branch_doc\source\xml2po.py'
> Reverted 'branch_doc\source\AutolistDoc.txt'
> Reverted 'branch_doc\source\API'
> Reverted 'branch_doc\source\readme.txt'
> Reverted 'branch_doc\source\build-zh_CN.txt'
> Reverted 'branch_doc\source\po'
> Reverted 'branch_doc\source\Screenshots.txt'
> Reverted 'branch_doc\source\Subversionbook.bat'
> Reverted 'branch_doc\source\tools'
> Reverted 'branch_doc\source\TortoiseHelp.bat'
> Reverted 'branch_doc\source\english'
> Reverted 'branch_doc\source\images'
>
>> svn status branch_doc
> Produces empty output. That is OK.
>
> The question:
> The files
> \doc\source\.svn\entries
> in the wc and in its backup copy do differ in size (1253 bytes in wc,
> 1242 bytes in its backup copy).
> Is this difference expected?
>
> The rest of the files in subdirectories are the same.
> (Not counting those files and subdirectories that do not belong to the wc
> and that were left there after reverting their addition)

What happens if you do svn st --no-ignore?

I think what happens is this:
doc/source has the property svn:ignore=*
The incorrect merge then tries to merge a load of stuff from doc/
which of course does not exist, so is marked as missing with tree
conflict. However, since everything in source is ignored, these
conflicts are hidden. I would expect a conflict status to override an
ignore and show up anyway.

Simon

-- 
:       ___
:  oo  // \\      "De Chelonian Mobile"
: (_,\/ \_/ \     TortoiseSVN
:   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
:   /_/   \_\     http://tortoisesvn.net
------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=1357990
To unsubscribe from this discussion, e-mail: [dev-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2009-03-19 22:18:26 CET

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.