Подтвердить что ты не робот

SVN: Что означает статус "переключаемый относительно его родителя"?

Я пытаюсь обновить наш живой сайт из репозитория SVN. Насколько я знаю, в РЕПО ничего нет. который должен конфликтовать с чем-либо в рабочем каталоге. Но когда я пытаюсь "svn up" в общедоступном корневом каталоге, я получаю следующую ошибку:

svn: REPORT request failed on '/svn/oursite/!svn/vcc/default'
svn: Working copy path 'app' does not exist in repository

Когда я запускаю "svn status" в docroot, я вижу следующее:

docroot$ svn st -N
   +S  app
   +S  downloads
   +S  index.php
   (etc.)

В соответствии с документами флаг S указывает whether the item is switched relative to its parent. Что это означает даже, и что я могу сделать, чтобы исправить это?

EDIT: Я должен упомянуть, что я единственный, кто работал с репозиторием SVN. Я работаю с ним весь день, пытаясь победить одну проблему с коррупцией за другой, когда я перемещаю вещи.

(SVN замечательный, но он уверен в хрупкости... Кажется, ломается, если вы просто заглядываете в него неправильно!)

4b9b3361

Ответ 1

В той же папке, где вы запустили svn status, выполните следующую команду:

svn info app

Это покажет вам, на каком URL-адресе указываются метаданные svn в папке приложения. Вероятно, вы увидите, что он указывает на другое место по сравнению с тем, которое вы ожидаете, на основе URL-адреса родительской папки.

Затем вы можете использовать svn switch для указания каждой переключаемой папки на правильный URL-адрес или просто удалить каждую папку с коммутацией с помощью rm -rf, а затем сделать svn update.

обновить после повторного вопроса: Скотт прав, когда говорит, что переключаемые папки не должны вызывать ошибок, когда вы делаете svn update.

Причина, по которой возникают проблемы с вашей рабочей копией, заключается в том, что вы перемещаете или переименовываете папки, не используя команду svn mv. Это классическая ошибка новичка SVN; Я участвовал в обучении новых пользователей SVN, и я видел это много.

Трудно восстановить рабочую копию после таких ошибочных манипуляций. Лучший способ исправить это, как правило, просто сделать новую проверку. Будущие версии SVN будут централизовать Теперь Subversion 1.7 централизовать метаданные .svn, что уменьшает вероятность таких ошибок.

Ответ 2

Я думаю, что каталог каким-то образом поврежден. Если это не так уж важно, я уверен, что удаление каталога и повторное заполнение/проверка заставят проблему уйти.

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

Здесь один парень, который решил это nuking way (http://andychase.net/posts/2006/04/working-copy-path-foo-does-not-exist-repository), и несколько других подобных примеров довольно легко доступны для поиска.

Ответ 3

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

Ответ 4

Я нашел одно решение, которое работало здесь. Последовательность действий:

Откройте файл, который существует только в текущей ветке в текстовом редакторе.

  • Переключиться на другую ветку.
  • Сохраните файл в редакторе.
  • Отключить обратно - теперь он жалуется, что он не может, потому что файл будет заменен коммутатором.
  • Удалить файл.
  • Верните переключатель. Теперь все файлы имеют статус "S".
  • Еще раз переключитесь на . Теперь это все счастье в стране устаревших VCS.