Путаница в SVN: локальное добавление, входящее добавление при слиянии. К чему на самом деле относятся эти слова?

Я новичок в подрывной деятельности, и документы просто не имеют для меня смысла. Мне было интересно, может ли кто-нибудь разбить это сообщение об ошибке (от svn st) на простой английский язык, а также другое, которое я получаю local delete, incoming delete upon merge.

Чтобы быть точным в моем вопросе:

  1. К чему относится local add (или local delete)?
  2. Что означает incoming add (или incoming delete)?

Что меня озадачивает, так это то, что ветка не имеет абсолютно никакого отношения к файлам, которые получают эти ошибки. Другими словами, он не добавляет и не удаляет ни один из этих файлов локально (что, как я полагаю, означает local add/delete). Кроме того, если бы я удалил файл локально, почему это в любом случае конфликтует с удалением в репо (incoming)?

Исходная информация

Как я сюда попал: я объединил trunk со своим branch и пытаюсь закоммитить свою ветку.

P.S. Я (пытался) прочитать Управление магистральными и функциональными ветвями: локальное удаление, входящее удаление при слиянии, но слишком много терминология. Другие вопросы/ответы, которые я прочитал здесь, на SO, похоже, не применимы или их трудно понять.


person JohnK    schedule 27.01.2014    source источник
comment
Дубликат stackoverflow.com/questions/3985504/   -  person reinierpost    schedule 06.04.2016
comment
Это похожая тема, но не дубликат: я спрашиваю о значениях слов, не как решить проблему   -  person JohnK    schedule 19.04.2016


Ответы (1)


Local Add или Local Delete относится к добавлению или удалению в рабочей копии SVN. Incoming Add или Incoming Delete относятся к обновлению из репозитория svn. Например, пользователь-А и пользователь-Б вышли из филиала 1. Пользователь-A работает с файлом abc.java. Пользователь-B удалил тот же файл и зафиксировал свои изменения. Итак, теперь в репозитории SVN файл abc.java отсутствует, а пользователь-A все еще модифицируется, и когда он попытается зафиксировать, он получит ошибку out of date. Когда пользователь-А попытался обновить свою рабочую копию Incoming Delete, в рабочей копии пользователя-А возник конфликт. Аналогично обстоит дело со слиянием. Вы можете разрешить конфликт svn resolve --accept=working PATH

person Dipu H    schedule 27.01.2014
comment
Спасибо за ответ. Мне до сих пор не ясно, почему локальное удаление будет конфликтовать с входящим удалением. Во всяком случае, ваш ответ усиливает загадочность. - person JohnK; 05.11.2014
comment
Локальное удаление — это удаление svn, а не имя файла del или имя файла rm. Таким образом, при обновлении в приведенной выше ситуации вы должны получить конфликт дерева. - person Dipu H; 06.11.2014