Конфликт SVN Merge во время коммита - PullRequest
8 голосов
/ 06 августа 2009

Eclipse + Subversive плагин

При отправке каталога, который не синхронизирован с SVN, появляется сообщение:

Merge conflict during commit
svn: Commit failed (details follow):
svn: File or directory '.' is out of date; try updating
svn: resource out of date; try updating

Попытка обновить весь проект из представления Eclipse Navigator (щелкните правой кнопкой мыши> Обновить или F5), и проблема все еще сохраняется.

Есть ли что-то, что можно сделать в этом случае?

Ответы [ 6 ]

12 голосов
/ 06 августа 2009

Вы смешиваете две разные операции в Eclipse:

  • Обновление (из управления версиями)

и

  • Обновить

«обновление» означает получение самой последней версии файла (ов) из системы контроля версий. «Обновить» просто означает, что Eclipse обновит свой вид локальной файловой системы, если файл был изменен вне Eclipse.

Вам нужно сделать обновление (Team-> Update).

8 голосов
/ 06 августа 2009

Вы должны обновить, разрешить конфликты, а затем зафиксировать снова.

См. эту ссылку для получения помощи по разрешению конфликтов в затмении.

2 голосов
/ 07 августа 2009

Иногда eclipse + subversion теряется, и требуется более надежное решение:

  1. Скопируйте код с изменениями в другое место (желательно с помощью копирования и вставки).
  2. Заменить на последнее из репо (или отменить) в каталоге, вызвавшем проблему
  3. Скопируйте изменения обратно (с помощью вырезания и вставки снова) и зарегистрируйтесь.
1 голос
/ 25 октября 2011

попробуйте удалить .svn / all-wcprops. может быть, это поможет

0 голосов
/ 06 августа 2009

Вам нужно сделать svn-обновление, чтобы убедиться, что вы полностью обновлены перед фиксацией.

svn update

Если обновление не работает, возможно, вам потребуется выполнить очистку.

svn cleanup

Вы сможете найти обе эти команды в вашем SVN-клиенте за пределами Eclipse, если вы его используете.

0 голосов
/ 06 августа 2009

Кто-то еще изменил этот каталог на вас.

Вам необходимо выполнить обновление svn, чтобы получить последнюю версию, прежде чем совершить коммит.

svn update

или

right click > Team > Update

Обновить или F5 только перечитает то, что в данный момент извлечено, и проверит наличие локальных изменений, то есть изменений, внесенных вне затмения.

Команда svn update переносит любые изменения, сделанные удаленно (фиксирует), в ваше рабочее пространство.

...