You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by emerson <ec...@gmail.com> on 2010/07/08 11:11:07 UTC

question about "Tree conflict: local edit, incoming delete upon merge"

Hi

I'm trying to apply a set of changes from our dev branch to our stable branch.
If I try to apply all changes at once I get a 21 tree conflics, so I'm
trying one by one, and committing at the end, so that I can be sure
I'm promoting the whole feature.

There is one specific revision that deletes a file.


emerson@emerson-desktop:~/workspace/branches/stable$ svn merge
http://subversion/svn/dotcom/trunk -c 80520

--- Merging r80520 into '.':
   C modules/com.yell.ucssearch/src/java/com/company/search/api/response/DoRetrieveNatAdFeed.java
Summary of conflicts:
  Tree conflicts: 1


if I check the status of the file it shows:

emerson@emerson-desktop:~/workspace/branches/stable$ svn status
modules/com.company.search/src/java/com/company/search/api/response/DoRetrieveNatAdFeed.java
      C modules/com.company.search/src/java/com/company/search/api/response/DoRetrieveNatAdFeed.java
      >   local edit, incoming delete upon merge

why is that? This is a simple delete , why does it show as a conflict?
the file hasn't changed by any other revision that is part of the
merge. Shouldn't it just remove the file locally or mark it for
deletion? Can't I apply several revisions to commit afterwards
together if one of them contains a deletion??

Could someone clarify this please?

Thanks
Emerson

Re: question about "Tree conflict: local edit, incoming delete upon merge"

Posted by emerson <ec...@gmail.com>.
On this other example I get a conflict when doing a dry-run, but when
carrying out the real merge it doesn't complain:

emerson@emerson-desktop:~/workspace/branches/stable$ svn merge
--dry-run http://subversionserver/svn/cpndotcom/trunk -c
81067,81094,81095
--- Merging r81067 into '.':
A    resources/software_packs/pt/extras
A    resources/software_packs/pt/extras/postMerge.sh
--- Merging r81094 into '.':
U    resources/software_packs/pt/build.xml
--- Merging r81095 into '.':
   C resources/software_packs/pt/extras
Summary of conflicts:
  Tree conflicts: 1
emerson@emerson-desktop:~/workspace/branches/stable$ svn merge
http://subversionserver/svn/cpndotcom/trunk -c 81067,81094,81095
--- Merging r81067 into '.':
A    resources/software_packs/pt/extras
A    resources/software_packs/pt/extras/postMerge.sh
--- Merging r81094 into '.':
U    resources/software_packs/pt/build.xml
--- Merging r81095 into '.':
U    resources/software_packs/pt/extras/postMerge.sh



On 8 July 2010 14:21, emerson <ec...@gmail.com> wrote:
> On the release notes it also say:
> http://subversion.apache.org/docs/release-notes/1.6.html
>
> "Situations now flagged as conflicts include deletions of locally modified file"
>
> Does it mean I won't be able to apply several revisions through merge
> and then commit them at once, in the following case?
>
> trunk revision 4 changed file A
> trunk revision 5 deleted the same file A
>
> note: nothing else changed file A
>
> Then in my local stable copy of the stable branch I apply revision 4,
> then apply revision 5, and try to commit all together.
>
> Based on the phrase above, that isn't allowed?
>
> thanks for the help
> Emerson
>
>
>
> On 8 July 2010 13:41, emerson <ec...@gmail.com> wrote:
>> Ops, missed the reply-all.
>>
>> That specific file hasn't changed since the branch was created, still
>> I got the tree conflict when it was deleted in svn.
>>
>> And for other files that I get tree conflict, they had been added and
>> changed in previous revisions, but all of them had been merged
>> locally.
>>
>> So...  we are using 1.6 client and 1.4.4 server. Would
>> that be the reason of these type of conflicts?
>>
>> On 8 July 2010 12:54, Olivier Sannier <ob...@free.fr> wrote:
>>> Between the time you created the branch and the time you merge it, the trunk
>>> has evolved and the file has been modified.
>>> Use the log to see that.
>>>
>>> Regards
>>> Olivier
>>>
>>> PS: Please reply to the list as well.
>>>
>>> emerson wrote:
>>>>
>>>> Hi Olivier
>>>>
>>>> That is the thing, there is no changes done in that specific file!
>>>>
>>>> I just did:
>>>> - revert that file
>>>> - update from svn, nothing to update
>>>> - merge that revision
>>>> - got conflict
>>>>
>>>> One detail I left out: we are using 1.6 client and 1.4.4 server. Would
>>>> that be the reason of these type of conflicts?
>>>>
>>>> Regards
>>>> Emerson
>>>> On 8 July 2010 12:34, Olivier Sannier<ob...@free.fr>  wrote:
>>>>
>>>>>
>>>>> emerson wrote:
>>>>>
>>>>>>
>>>>>> emerson@emerson-desktop:~/workspace/branches/stable$ svn status
>>>>>>
>>>>>>
>>>>>> modules/com.company.search/src/java/com/company/search/api/response/DoRetrieveNatAdFeed.java
>>>>>>       C
>>>>>>
>>>>>> modules/com.company.search/src/java/com/company/search/api/response/DoRetrieveNatAdFeed.java
>>>>>>       >      local edit, incoming delete upon merge
>>>>>>
>>>>>> why is that? This is a simple delete , why does it show as a conflict?
>>>>>> the file hasn't changed by any other revision that is part of the
>>>>>> merge. Shouldn't it just remove the file locally or mark it for
>>>>>> deletion? Can't I apply several revisions to commit afterwards
>>>>>> together if one of them contains a deletion??
>>>>>>
>>>>>>
>>>>>
>>>>> The message says it all: You have a local (ie in trunk) modification
>>>>> while
>>>>> the merge tries to delete that modified files.
>>>>> For you not to loose changes without knowing about it, SVN triggers a
>>>>> tree
>>>>> conflict. Only you, human, can decide what to do between keeping the file
>>>>> with the changes made in trunk, or accept the deletion that comes from
>>>>> the
>>>>> merge of the branch
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>

Re: question about "Tree conflict: local edit, incoming delete upon merge"

Posted by emerson <ec...@gmail.com>.
On the release notes it also say:
http://subversion.apache.org/docs/release-notes/1.6.html

"Situations now flagged as conflicts include deletions of locally modified file"

Does it mean I won't be able to apply several revisions through merge
and then commit them at once, in the following case?

trunk revision 4 changed file A
trunk revision 5 deleted the same file A

note: nothing else changed file A

Then in my local stable copy of the stable branch I apply revision 4,
then apply revision 5, and try to commit all together.

Based on the phrase above, that isn't allowed?

thanks for the help
Emerson



On 8 July 2010 13:41, emerson <ec...@gmail.com> wrote:
> Ops, missed the reply-all.
>
> That specific file hasn't changed since the branch was created, still
> I got the tree conflict when it was deleted in svn.
>
> And for other files that I get tree conflict, they had been added and
> changed in previous revisions, but all of them had been merged
> locally.
>
> So...  we are using 1.6 client and 1.4.4 server. Would
> that be the reason of these type of conflicts?
>
> On 8 July 2010 12:54, Olivier Sannier <ob...@free.fr> wrote:
>> Between the time you created the branch and the time you merge it, the trunk
>> has evolved and the file has been modified.
>> Use the log to see that.
>>
>> Regards
>> Olivier
>>
>> PS: Please reply to the list as well.
>>
>> emerson wrote:
>>>
>>> Hi Olivier
>>>
>>> That is the thing, there is no changes done in that specific file!
>>>
>>> I just did:
>>> - revert that file
>>> - update from svn, nothing to update
>>> - merge that revision
>>> - got conflict
>>>
>>> One detail I left out: we are using 1.6 client and 1.4.4 server. Would
>>> that be the reason of these type of conflicts?
>>>
>>> Regards
>>> Emerson
>>> On 8 July 2010 12:34, Olivier Sannier<ob...@free.fr>  wrote:
>>>
>>>>
>>>> emerson wrote:
>>>>
>>>>>
>>>>> emerson@emerson-desktop:~/workspace/branches/stable$ svn status
>>>>>
>>>>>
>>>>> modules/com.company.search/src/java/com/company/search/api/response/DoRetrieveNatAdFeed.java
>>>>>       C
>>>>>
>>>>> modules/com.company.search/src/java/com/company/search/api/response/DoRetrieveNatAdFeed.java
>>>>>       >      local edit, incoming delete upon merge
>>>>>
>>>>> why is that? This is a simple delete , why does it show as a conflict?
>>>>> the file hasn't changed by any other revision that is part of the
>>>>> merge. Shouldn't it just remove the file locally or mark it for
>>>>> deletion? Can't I apply several revisions to commit afterwards
>>>>> together if one of them contains a deletion??
>>>>>
>>>>>
>>>>
>>>> The message says it all: You have a local (ie in trunk) modification
>>>> while
>>>> the merge tries to delete that modified files.
>>>> For you not to loose changes without knowing about it, SVN triggers a
>>>> tree
>>>> conflict. Only you, human, can decide what to do between keeping the file
>>>> with the changes made in trunk, or accept the deletion that comes from
>>>> the
>>>> merge of the branch
>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>

Re: question about "Tree conflict: local edit, incoming delete upon merge"

Posted by emerson <ec...@gmail.com>.
Ops, missed the reply-all.

That specific file hasn't changed since the branch was created, still
I got the tree conflict when it was deleted in svn.

And for other files that I get tree conflict, they had been added and
changed in previous revisions, but all of them had been merged
locally.

So...  we are using 1.6 client and 1.4.4 server. Would
that be the reason of these type of conflicts?

On 8 July 2010 12:54, Olivier Sannier <ob...@free.fr> wrote:
> Between the time you created the branch and the time you merge it, the trunk
> has evolved and the file has been modified.
> Use the log to see that.
>
> Regards
> Olivier
>
> PS: Please reply to the list as well.
>
> emerson wrote:
>>
>> Hi Olivier
>>
>> That is the thing, there is no changes done in that specific file!
>>
>> I just did:
>> - revert that file
>> - update from svn, nothing to update
>> - merge that revision
>> - got conflict
>>
>> One detail I left out: we are using 1.6 client and 1.4.4 server. Would
>> that be the reason of these type of conflicts?
>>
>> Regards
>> Emerson
>> On 8 July 2010 12:34, Olivier Sannier<ob...@free.fr>  wrote:
>>
>>>
>>> emerson wrote:
>>>
>>>>
>>>> emerson@emerson-desktop:~/workspace/branches/stable$ svn status
>>>>
>>>>
>>>> modules/com.company.search/src/java/com/company/search/api/response/DoRetrieveNatAdFeed.java
>>>>       C
>>>>
>>>> modules/com.company.search/src/java/com/company/search/api/response/DoRetrieveNatAdFeed.java
>>>>       >      local edit, incoming delete upon merge
>>>>
>>>> why is that? This is a simple delete , why does it show as a conflict?
>>>> the file hasn't changed by any other revision that is part of the
>>>> merge. Shouldn't it just remove the file locally or mark it for
>>>> deletion? Can't I apply several revisions to commit afterwards
>>>> together if one of them contains a deletion??
>>>>
>>>>
>>>
>>> The message says it all: You have a local (ie in trunk) modification
>>> while
>>> the merge tries to delete that modified files.
>>> For you not to loose changes without knowing about it, SVN triggers a
>>> tree
>>> conflict. Only you, human, can decide what to do between keeping the file
>>> with the changes made in trunk, or accept the deletion that comes from
>>> the
>>> merge of the branch
>>>
>>>
>>>
>>
>>
>
>

Re: question about "Tree conflict: local edit, incoming delete upon merge"

Posted by Olivier Sannier <ob...@free.fr>.
Between the time you created the branch and the time you merge it, the 
trunk has evolved and the file has been modified.
Use the log to see that.

Regards
Olivier

PS: Please reply to the list as well.

emerson wrote:
> Hi Olivier
>
> That is the thing, there is no changes done in that specific file!
>
> I just did:
> - revert that file
> - update from svn, nothing to update
> - merge that revision
> - got conflict
>
> One detail I left out: we are using 1.6 client and 1.4.4 server. Would
> that be the reason of these type of conflicts?
>
> Regards
> Emerson
> On 8 July 2010 12:34, Olivier Sannier<ob...@free.fr>  wrote:
>    
>> emerson wrote:
>>      
>>> emerson@emerson-desktop:~/workspace/branches/stable$ svn status
>>>
>>> modules/com.company.search/src/java/com/company/search/api/response/DoRetrieveNatAdFeed.java
>>>        C
>>> modules/com.company.search/src/java/com/company/search/api/response/DoRetrieveNatAdFeed.java
>>>        >      local edit, incoming delete upon merge
>>>
>>> why is that? This is a simple delete , why does it show as a conflict?
>>> the file hasn't changed by any other revision that is part of the
>>> merge. Shouldn't it just remove the file locally or mark it for
>>> deletion? Can't I apply several revisions to commit afterwards
>>> together if one of them contains a deletion??
>>>
>>>        
>> The message says it all: You have a local (ie in trunk) modification while
>> the merge tries to delete that modified files.
>> For you not to loose changes without knowing about it, SVN triggers a tree
>> conflict. Only you, human, can decide what to do between keeping the file
>> with the changes made in trunk, or accept the deletion that comes from the
>> merge of the branch
>>
>>
>>      
>
>    

Re: question about "Tree conflict: local edit, incoming delete upon merge"

Posted by Olivier Sannier <ob...@free.fr>.
emerson wrote:
> emerson@emerson-desktop:~/workspace/branches/stable$ svn status
> modules/com.company.search/src/java/com/company/search/api/response/DoRetrieveNatAdFeed.java
>        C modules/com.company.search/src/java/com/company/search/api/response/DoRetrieveNatAdFeed.java
>        >    local edit, incoming delete upon merge
>
> why is that? This is a simple delete , why does it show as a conflict?
> the file hasn't changed by any other revision that is part of the
> merge. Shouldn't it just remove the file locally or mark it for
> deletion? Can't I apply several revisions to commit afterwards
> together if one of them contains a deletion??
>    

The message says it all: You have a local (ie in trunk) modification 
while the merge tries to delete that modified files.
For you not to loose changes without knowing about it, SVN triggers a 
tree conflict. Only you, human, can decide what to do between keeping 
the file with the changes made in trunk, or accept the deletion that 
comes from the merge of the branch