it-roy-ru.com

TortoiseSVN сообщает о конфликте, но конфликт не может быть найден

У меня есть рабочая копия для всего моего репозитория, которая содержит несколько проектов Python. Когда я выбираю правую кнопку мыши -> Обновление SVN в проводнике Windows, я получаю сообщение об ошибке с указанием конкретной папки проекта:

Command: Update
Updating: path\to\working\copy
Skipped obstructing working copy: path\to\working\copy\project
Completed: At revision: 176
Warning!: One or more files are in a conflicted state.

Когда я иду в этот проект и щелкаю правой кнопкой мыши -> SVN Update, он успешно обновляется. Также не доступен редактор конфликтов, и когда я щелкаю правой кнопкой мыши -> TortoiseSVN -> Resolved, файлы недоступны.

Что может быть причиной конфликта? Пока это происходит, невозможно обновить этот проект в моей рабочей копии.

45
Brian
Skipped obstructing working copy

это означает, что на пути есть папка с рабочей копией: ваше обновление хочет добавить папку с именем «проект», но у вас уже есть версионная папка «проект» в вашей рабочей копии…. Возможно, вы переместили эту папку из другой рабочая копия? Или эта папка является собственной рабочей копией (если в ней есть скрытые папки .svn, то это независимая, отдельная рабочая копия).

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

94
Stefan

Вы также можете проверить опцию «Удалить неверсированные файлы и папки» в меню очистки, если ваша версия SVN поддерживает это .... Это определенно упрощает задачу, а не выискивает эти папки одну за другой (я всегда находил, что они не -версионные копии).

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

7
Qadi

Попробуйте щелкнуть правой кнопкой мыши/TortoiseSVN/очистить.

Это обычно работает для меня.

4
Chris Mackie

Я столкнулся с той же проблемой, но это происходило в корне очень большой ветви (c:\svn\root). Я работаю глубоко внутри (c:\svn\root\some\dir\deep\down\) только в одном из каталогов, поэтому объяснение проблемы и решения Стефаном не имело смысла. 

Мой обходной путь состоял в том, чтобы обновить каждый из каталогов по отдельности в c:\svn\root\, а затем вернуться и обновить c:\svn\root\. Это сработало для меня. Не уверен, что проблема действительно была.

1
N Klosterman

С TortoiseSVN 1.9.5 в системе Windows 10 у меня было похожее сообщение об ошибке, которое возникало при слиянии из ветви (Project/branch/A) обратно в транк (Project/trunk). Мой рабочий каталог со стволом не имел локальных изменений, но слияние пожаловалось на корень папки моей рабочей копии с 

«Пропущенная блокирующая рабочая копия»

. Проблема заключалась в том, что моя рабочая копия находилась в другом разделе, а «Project/trunk» был узлом, который указывал на реальное расположение файлов в другом разделе.

Исправление состояло в том, чтобы выполнить операцию слияния TortoiseSVN с папкой раздела, на которую указывал узел, то есть где фактически находились файлы рабочей копии.

0
miro

Я решил эту проблему, не перемещая файлы, так как мои подпапки obstructed были правильно связаны с svn: 

  1. Отметьте все файлы папок, имеющих Skipped obstructing working copy
  2. Теперь вы можете безопасно удалить заблокированные папки (как мы уже проверяли)
  3. Выполните обновление в корневой папке

Теперь вся папка снова чистая и обновления в корневой папке работают.

0
FiveO