Конфликт фиксации Subversion - PullRequest
2 голосов
/ 30 мая 2010

Я использую Subversion в основном для синхронизации работы между двумя компьютерами, которые я использую ежедневно (и в качестве резервной копии, поскольку у меня есть извлеченная копия репозитория на каждом компьютере). Я держу основной репозиторий на USB-накопителе.

Недавно я столкнулся со следующей ошибкой при попытке зафиксировать текущую рабочую копию (и обе рабочие копии, по одной на каждом компьютере, теперь идентичны):

! C career\UVaOnlineJudge\Log.doc
local delete, incoming delete upon update
! C career\UVaOnlineJudge\102\Main.class
local delete, incoming delete upon update

Не вдаваясь в подробности о том, что я сделал для синхронизации хранилища, мой вопрос носит более общий характер. Что означает «локальное удаление, входящее удаление после обновления»? Что Subversion ожидает, что я ее не даю?

1 Ответ

4 голосов
/ 30 мая 2010

Не используя ваши детали (которые вы не предоставили) о том, что вы сделали, чтобы попасть в эту ситуацию, звучит как вы сделали что-то похожее на:

  1. Удалить «Log.doc» на компьютере A
  2. Удалить "Log.doc" на компьютере B
  3. Передать изменения с компьютера A в ваш репозиторий
  4. Попробуйте обновить хранилище на компьютере B

Subversion пытается объединить удаление из репозитория с локальным удалением, и не чувствует, что оно будет сливаться чисто. Что вы можете сделать, это:

svn revert Log.doc
svn revert 102/Main.class

и попробуйте svn update снова. Subversion применяет входящую операцию «удаления» из хранилища и удаляет эти локальные файлы.

...