Hi Stefan,

That is awesome thinks....
I have had a quick scan, but it is getting let here and I have been up since 
very early.
So I'll wait until tomorrow until trying to digest it all, properly.

I'll post back with what I have tried and what did / didn't work.

I really appreciate the assistance.



Beau.

On 20/04/2011, at 8:49 PM, Stefan Sperling wrote:

> On Wed, Apr 20, 2011 at 03:43:06PM +1000, Gavin "Beau" Baumanis wrote:
>> Hi Everyone,
>> 
>> I am having some issues understanding tree conflicts.
>> 
>> I attempted the following;
>> svn merge -r1:head trunk/com/palcare/listsServices/ 
>> branches/production/com/palcare/listsServices/ --accept="theirs-full"
>> 
>> and got this;
>> Skipped 'branches/production/com/palcare/listsServices/ListsService.cfc'
>> --- Merging r15942 through r20669 into 
>> 'branches/production/com/palcare/listsServices':
>>   C branches/production/com/palcare/listsServices/listsentries.cfc
>>   C branches/production/com/palcare/listsServices/lists.cfc
>>   C branches/production/com/palcare/listsServices/listsService.cfc
>> Skipped 'branches/production/com/palcare/listsServices/ListsService.cfc'
>> U   branches/production/com/palcare/listsServices
>> Summary of conflicts:
>>  Tree conflicts: 3
>>  Skipped paths: 2
>> 
>> 
>> I have read the svn-book and;
>> Using everyone's good friend Mr google I found these;
>> http://stackoverflow.com/questions/738367/why-am-i-getting-tree-conflicts-in-subversion
>> http://blogs.collab.net/subversion/2009/03/subversion-160-and-tree-conflicts/
>> 
>> But I must be missing something...
>> They all seem to be about having local edits in a file that has subsequently 
>> been deleted in the repository  - prior to me getting my edits committed.
>> 
>> I'm not sure how to transpose that into my case.
>> I have no local edit of the destination path/files.
>> They are up to date.(svn update)
>> (In fact I even went to far as to use the OS to delete the path and run svn 
>> update to restore them to the current version in the repo)
>> 
>> Ultimately I simply want my production branch to match exactly what is in 
>> the trunk for the specified path.
>> 
>> I "thought";
>> Surely accept="theirs-full" should be saying I don't care about my working 
>> copy's destination path  - simply make it look like the source path?
>> 
>> I could simply replace with an os  file copy and then commit the branch - 
>> but that just seems wrong.
>> 
>> Can anyone can shed some light on the matter for me, please?
> 
> Hi Gavin,
> 
> the --accept option only works for text and property conflicts at the
> moment. There are plans to extend this to handle tree conflicts, too.
> This depends on wc-ng though so we'll pick up this up again some time
> after the 1.7.0 release.
> 
> Local changes in the working copy can cause tree conflicts during updates
> and merges. But during merges, "local" edits are considered local to
> the merge target _branch_ rather than just the working copy.
> E.g. if you rename a file on a branch and commit this rename and then
> merge an edit for the file at its old location from trunk you'll get a tree
> conflict even though the "local" change (rename) has already been committed.
> 
> Also, the way you are invoking svn merge seems dubious.
> You are doing a 2-URL merge across the entire revision range.
> If you use merge-tracking you'd usually avoid 2-URL merges if at all
> possible. The way you've run this merge may cause Subversion to apply
> changes that were already merged between these branches again which can
> lead to spurious conflicts.
> 
> You might want to take a look at the merge patterns described in the
> new help text for svn merge (e.g. posted here:
> http://svn.haxx.se/users/archive-2011-04/0209.shtml).
> If you stick to those patterns chances are your merges will mostly
> be conflict-free expect for obvious conflicts.

Reply via email to