Ошибка SVN - не рабочая копия

Недавно наш сервер SVN был изменен, и мы сделали переключатель SVN.

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

Но на самом верхнем уровне хранилища, когда я пытаюсь обновить файлы, я получаю svn: Working copy '.' заблокированная ошибка и очистка тоже не помогают. Когда я делаю очистку, я получаю такие ошибки - svn: 'content' не является каталогом рабочей копии

Свежий заказ не вариант вообще. Существуют ли другие способы очистки и снятия замков и полного переключения?

РЕДАКТИРОВАТЬ: последний абзац в ответе JesperE

Если вы получаете «не рабочую копию» при выполнении рекурсивной «очистки svn», я предполагаю, что у вас есть каталог, который должен быть рабочей копией (т. Е. Каталог .svn на верхнем уровне говорит об этом), но в нем отсутствует его собственный каталог .svn. В этом случае вы можете просто удалить / переместить этот каталог, а затем выполнить локальное обновление.

кажется, решение проблемы в хранилище. Я идентифицировал эти папки и сделал новую проверку этих отдельных папок, и ничего себе, блокировки снимаются при последующей очистке! Большое спасибо JesperE !!

Но я до сих пор не могу понять ошибку переключателя SVN, который теперь выглядит примерно так:

svn: хранилище в 'svn: // repourl / reponame / foldername' имеет uuid 'm / reponame', но в WC есть 'b5b39681-0ff6-784b-ad26-2846b9ea8e7d'

Любые идеи ?

214 svn
17.12.2008 11:51:40
для пользователей R, сталкивающихся с этой ошибкой: github.com/wch/r-source/wiki#adding-svn-information
isomorphismes 21.02.2019 05:08:06
22 ОТВЕТА
РЕШЕНИЕ

Если вы получаете «не рабочую копию» при выполнении рекурсии, svn cleanupя предполагаю, что у вас есть каталог, который должен быть рабочей копией (то есть .svnкаталог верхнего уровня говорит об этом), но в нем отсутствует собственный .svnкаталог. В этом случае вы можете просто удалить / переместить этот каталог, а затем выполнить локальное обновление (т.е. rm -rf content; svn checkout content).

Если вы получаете сообщение not a working copyоб ошибке, это означает, что Subversion не может найти правильный .svnкаталог там. Проверьте, есть ли .svnкаталог вcontents

Идеальным решением является новая проверка, если это возможно.

125
23.07.2015 00:20:28
Я согласен, сделайте новую проверку вместо того, чтобы пытаться переместить вашу рабочую копию с репо.
Tigraine 17.12.2008 12:00:17
Моя проблема в том, что я мигрировал на новый сервер и восстановил свои резервные копии файловой системы с работой, которая еще не была выполнена, и использовал svnadmin для фильтрации старых проектов, которые мне больше не нужны. Таким образом, мой репозиторий содержит всю необходимую мне информацию, но имеет новый UUID. В этом случае я просто собираю tar-файл с измененными файлами, получаю новую проверку и затем распаковываю.
Drarok 28.08.2009 15:21:11
Ваше предложение в первом абзаце не работает в моей системе (W7 + Cygwin). Скорее обновление rm & svn сделало это.
Jukka Dahlbom 2.05.2012 12:54:20
ВНИМАНИЕ: rm -rf удаляет папку contentнавсегда. Сделайте резервную копию перед ее выполнением.
KrishPrabakar 13.03.2015 09:51:08

svn: хранилище в 'svn: // repourl / reponame / foldername' имеет uuid 'm / reponame', но в WC есть 'b5b39681-0ff6-784b-ad26-2846b9ea8e7d'

Каждый репозиторий Subversion имеет уникальный идентификатор (uuid). Subversion использует это, чтобы удостовериться, что репо фактически одинаково при выполнении таких вещей, как переключение. Возможно, вам следует изменить uuid на сервере таким же, как и раньше.

0
17.12.2008 12:22:09
Изменение uuid на сервере - Как это сделать?
Vijay Dev 17.12.2008 12:31:25
Честно говоря, я понятия не имею, я просто предполагаю, что это может быть сделано. Вы проверяли в Книге Subversion что-нибудь об этом?
JesperE 17.12.2008 19:26:15

Может ли это быть несоответствие формата рабочей копии? Он изменился между SVN 1.4 и 1.5, и более новые инструменты автоматически конвертируют формат, но тогда старые не будут работать с конвертированной копией.

0
17.12.2008 12:27:00

Вы, должно быть, удалили базовый SVN-файл из вашего проекта (который предназначен только для чтения). За счет этого вы получаете эту ошибку.

Проверьте новый проект снова, объедините изменения (если таковые имеются) вашего старого проекта SVN с новым, используя "Winmerge", и зафиксируйте изменения в вашем последнем извлечении.

0
17.12.2008 12:57:36

Обходной путь: Переименуйте каталог, который не является «рабочей копией». Оформите / обновите / восстановите этот каталог снова. Переместите файлы из переименованного каталога в новые изменения фиксации.

Причина: Вы внесли некоторые изменения в некоторые файлы в каталоге .svn, это нарушает «рабочую копию»

3
17.12.2008 13:21:49

@JesperE упоминает, что вам нужно изменить uuid. Следующее должно помочь вам достичь этого.

На SVN 1.5+ вы можете сделать svnadmin setuuid; Затем вы можете проверить правильность установки с помощью svnlook uuid. В более ранних версиях SVN это более сложный процесс. См. Http://chestofbooks.com/computers/revision-control/subversion-svn/Managing-Repository-UUIDs-Reposadmin-Maint-Uuids.html.

Кроме того, UUID «m / reponame» выглядит подозрительно. Я считаю, что это должно быть шестнадцатеричное число, похожее на число в рабочей копии, так что, возможно, это действие улучшит все вокруг :-)

[Первоначально я прокомментировал ответ @ JesperE , но создал этот ответ, чтобы сделать его более понятным для людей и более полезным для Google. С тех пор я удалил свои комментарии. ]

0
23.05.2017 12:26:13

Я попал в похожую ситуацию ( svn: 'papers' is not a working copy directory) по-другому, поэтому я решил опубликовать свою историю битвы (упрощенно):

$ svn add papers
svn: Can't create directory 'papers/.svn': Permission denied

К сожалению! исправить разрешения ... тогда:

$ svn add papers
svn: warning: 'papers' is already under version control
$ svn st
~     papers
$ svn cleanup
svn: 'papers' is not a working copy directory

И даже уход papersс дороги и бег svn up(что сработало для ОП) не помогло. Вот что я сделал:

$ mv papers papers_
$ svn cleanup
$ svn revert papers
Reverted 'papers'
$ mv papers_/ papers
$ svn add papers

Это сработало.

47
1.06.2009 21:16:27

Я только что получил «не рабочую копию», и для меня причиной стал Automouter на Unix. Просто свежий "cd / path / to / work / directory" сделал свое дело.

1
1.12.2009 13:08:05

Если вы создали файл в новом каталоге, вместо 'svn add newdir / newfile' используйте 'svn add newdir', потому что вам нужно добавить каталог. Все файлы внутри каталога будут добавлены по умолчанию.

3
28.12.2009 02:40:24

Я решил это

  1. Скопируйте резервную копию затронутых папок
  2. SVN вернуть затронутые папки
  3. Вставьте файлы обратно из резервной копии

В моем случае проблема была связана с удаленными .svn-файлами.

6
20.01.2010 15:11:41
Как это сделать ? Пожалуйста, объясните вкратце
Anand Savjani 29.06.2015 06:49:16

То же самое, мне нужно было обновить папку 'contrib':

  1. Переместил старую папку,
  2. Скопировал новый
  3. Скопировал папки .svn в каждую (только три в моем случае) новую папку.

В моем случае проблема тоже была связана с удаленными папками .svn.

Решаемые.

1
6.03.2010 16:20:08
Нашел это примерно за 4 часа до очистки SVN с помощью плагина Eclipse - хорошие времена! Рабочая копия заблокирована - нет, это не так, придумайте лучшее сообщение Eclipse, спасибо.
Darth Jon 20.05.2015 20:29:13

Может быть, вы просто скопировали дерево папки и пытаетесь добавить низшую.

SVN
|_
  |
  subfolder1
       |
       subfolder2   (here you get an error)

в этом случае вы должны зафиксировать каталог на верхнем уровне.

5
8.10.2012 09:55:33

Была такая же проблема, оказалось, что у нас были Slik 1.6.2 и Tortoise на той же машине. Черепаха была обновлена ​​(и обновила рабочую копию), но Slik - нет, так что черепаха работала хорошо, но командные строки не работали с:

SVN: '.' не является каталогом рабочей копии

Удаление Tortoise и Slik, а затем переустановка Tortoise с включенными инструментами командной строки исправили это для меня.

0
4.06.2013 09:16:02

Я попытался вставить папку .svn из подпапки в корневую папку. Оно работает!!!

1
5.02.2014 13:52:51

Вот что я сделал:

  1. переименовать сундук в trunk_
  2. создать новую папку ствола
  3. Повторная проверка и прерывание процесса после извлечения нескольких файлов
  4. Переместите файлы из trunk_ в trunk
  5. Сделать свн уборку
  6. Сделай svn обновление. Это обновит статус файлов, после чего все ваши файлы будут обновлены.
1
5.03.2014 10:14:17

Я также сталкиваюсь с этой проблемой в работе svn diff, она была вызвана неправильным путем к файлу, вы должны добавить, './'чтобы указать текущий каталог файла.

1
28.09.2014 06:28:34

для Mac: - возьмите извлечение со стороны сервера, и откроется новое окно для выбора каталога на вашем локальном компьютере, затем поместите весь код в выбранную папку, затем откройте svn local side, добавьте и зафиксируйте проект

0
16.07.2015 09:44:52

Сегодня /FILE_NAME/ is not a working copyутром я обнаружил такую же проблему и потратил более двух часов на ее решение. После долгих RND и Google я нашел какое-то решение, и это CHECKOUT.

  1. CHECKOUTот SUBVERSIONместного до нового проекта.
  2. Измените часть кода в Java-файле и зафиксируйте проект.
  3. Это работает для меня.

Надеюсь, это поможет вам.

0
17.11.2015 07:31:09

Удалите папку .svn, которая присутствует на вашем локальном компьютере. Нажмите значок Windows и введите .svn, удалите всю папку. Это сработало для меня.

-1
8.08.2016 11:04:03

Недавно я использовал другие разработчики Mac, у меня была такая же ситуация, проблема была; Сначала мне нужно было набрать get repo path to Terminal, но я этого не сделал, а затем сказать, каковы ваши имя пользователя и пароль.

0
30.07.2018 13:47:47

Я только что натолкнулся на случай, когда каталог .svn находится на сервере nfs на другом компьютере, а на клиенте nfs не была запущена служба блокировки файлов ( lockd).

svn: E155007: '/mnt/svnworkdir' is not a working copy

Это прошло, как только lockdбыло запущено на клиентском хосте nfs.

Кажется, что Subversion может выдать лучшее сообщение об ошибке, когда он имеет проблемы с блокировкой файлов. Это была Subversion 1.10.0

0
8.10.2018 15:44:12

Я сделал новый заказ из того же проекта в другое место, затем скопировал из него папку .svn и заменил ее старой папкой .svn. После этого вызывается функция обновления svn, и все синхронизируется должным образом.

0
17.09.2019 08:23:56