SVN confusion: "local add, incoming add upon merge" What do the words actually refer to?

conflict, merge, svn, tree-conflict

Solution

`Local Add` or `Local Delete` refers to the addition or deletion in the SVN working copy. `Incoming Add` or `Incoming Delete` refers to the update from svn repository. For example, user-A and User-B has checked out from Branch1. User-A is working on the file abc.java. User-B has deleted the same file and committed his changes. So now in SVN repository the file abc.java is not present and user-A is still modifying and when he tries to commit, he will get an `out of date` error. When user-A tried to update his working copy `Incoming Delete` and conflict occurs in the working copy of User-A. Similar is the case with merging. You can resolve the conflict by `svn resolve --accept=working PATH`

Problem

I'm pretty new to subversion and the docs just aren't making sense to me. I was wondering if someone could break down this error message (from `svn st`) into plain English, as well as the other one I get `local delete, incoming delete upon merge`. To be precise about my question: - What does `local add` (or `local delete`) refer to? - What does `incoming add` (or `incoming delete`) refer to? What's mystifying to me is that the branch has absolutely nothing to do with the files that receive these errors. In other words, it doesn't add or delete any of these files locally (what I presume `local add/delete` means). Besides, if I had deleted the file locally, why would that be in conflict with a deletion in the repo (`incoming`) anyway? Background Information How I got here: I merged `trunk` into my `branch` and am trying to commit to my branch. P.S. I've (tried to) read Managing trunk and feature branches: local delete, incoming delete upon merge, but there's too much terminology. Other questions/answers I've read here on SO don't seem to apply or else are hard to understand.

Original source

Related problems