SVN Weirdness Day 2: SVN List и SVN Update Report разные вещи

В подкаталоге моей рабочей копии svn я делаю

svn list

Я вижу, что в репозитории 6 файлов (так же, как я вижу с SVNX). Хороший. Но в моей рабочей копии есть два файла, которые относятся к какой-то исторической точке, которую я не помню. Так я делаю

svn update

и он говорит, что все файлы обновлены до ревизии 122 (которая является головной ревизией). Как может быть разница между обновлением и списком? Что еще более важно, как я могу вернуть эти файлы, не выполняя новую проверку?

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

Изменить: svn cleanup вообще ничего не делает, а svn status вообще ничего не сообщает.

Изменить: вот что я сделал, поскольку один из комментаторов спросил.

root@Dans-13:/dans-data/php/nasa-secrets-revealed/trunk/images/testmenu$svn update
At revision 122.
root@Dans-13:/dans-data/php/nasa-secrets-revealed/trunk/images/testmenu$svn list
graph-big0.gif
graph-big1.gif
graph-big2.gif
graph0.gif
graph1.gif
graph2.gif
root@Dans-13:/dans-data/php/nasa-secrets-revealed/trunk/images/testmenu$ls
.svn        graph-big0.gif  graph0.gif

person Dan Rosenstark    schedule 27.05.2009    source источник
comment
Можете ли вы публиковать списки и точные команды, которые вы выполняли?   -  person basszero    schedule 27.05.2009
comment
Это тоже происходит со мной. Какие версии клиента и сервера вы используете? У меня 1.6.5 на клиенте и 1.4.4 на сервере.   -  person tuler    schedule 05.11.2009
comment
tuler, проверьте мой ответ ниже .. Я не знаю, с каким клиентом я работал в мае. Спасибо!   -  person Dan Rosenstark    schedule 05.11.2009


Ответы (4)


У вас может быть разреженная проверка. Пытаться

svn update --depth infinity --set-depth infinity
person Stefan    schedule 27.05.2009
comment
Да, но поскольку я сам выполнил первоначальную проверку, я знаю, что это не так. Я буду за вас, потому что моя проблема связана с svn, а не с полезными людьми SO. - person Dan Rosenstark; 27.05.2009
comment
простой 'svn st -v' должен показать вам, есть ли у вас редкая проверка или нет. - person Stefan; 28.05.2009
comment
Значит, вы говорите, что даже если бы я сам не выполнил частичную оплату, это могло произойти случайно? - person Dan Rosenstark; 28.05.2009
comment
Это зависит от вашего знания svn - возможно, вы не собирались это делать, но все же сделали. - person Stefan; 28.05.2009
comment
Какие? Я никогда не использую --depth или --set-depth. Это все еще возможно? - person Dan Rosenstark; 28.05.2009
comment
Если вы действительно никогда не используете --depth, тогда нет. Но просто запустите svn st -v или svn info для папки и проверьте. Чтобы проверить это, требуется секунда, гораздо меньше, чем спорить здесь снова и снова. - person Stefan; 28.05.2009
comment
Извините, Стефан, я никогда не видел вашего комментария до сих пор (несколько месяцев спустя). . Причина, по которой я не последовал вашему совету, заключалась в том, что я решил проблему и НЕ мог проверить с помощью svn st -v. Так что мой вопрос был академическим. Спасибо за помощь. - person Dan Rosenstark; 10.11.2009

В каталоге настроено свойство svn:ignore?

svn pg svn:ignore .
person laalto    schedule 27.05.2009
comment
Нет. Только что запустил svn status --no-ignore, и в списке нет файлов. - person Dan Rosenstark; 27.05.2009

Насколько я знаю о SVN, это совершенно невозможно и не должно происходить.

В конце концов я сделал следующее: Удалил весь каталог с уровня выше и запустил svn update. Иногда ответ состоит в том, чтобы обойти проблему.

person Dan Rosenstark    schedule 27.05.2009
comment
Как я уже сказал в вопросе, я также выполнил svn cleanup. Спасибо! - person Dan Rosenstark; 27.05.2009
comment
Это эквивалентно ответу Стефана. Вы, вероятно, столкнулись с этой известной ошибкой, которая вызывает непреднамеренное создание разреженных рабочих копий: stackoverflow.com/questions/866835/ - person Wim Coenen; 28.05.2009
comment
@wcoenen, спасибо за комментарий. Проблема на самом деле заключается в том, что время, потраченное на выяснение того, какой каталог указывает на другую ревизию ... не было никаких указаний на это ни с svn info, ни с svn list, ни с чем-либо. Хотя отладка - это весело, я бы предпочел отладку, когда код неправильный ... есть ли способ гарантировать хороший переключатель? - person Dan Rosenstark; 28.05.2009
comment
Кроме того, я мог бы упомянуть, что я не мог столкнуться с черепахой, поскольку я использую командную строку svn в osx. Хотел бы я иметь черепаху :) - person Dan Rosenstark; 28.05.2009

Или, может быть, вы выполнили переключатель svn или svn update -r X в этой папке рабочей копии. Это может вам сказать вывод svn: info.

person solsson    schedule 27.05.2009
comment
Спасибо. Информация svn показала, что я указывал в нужное место в репозитории, а svn update показало, что я обновляюсь до нужной версии. - person Dan Rosenstark; 27.05.2009