механизм обновления SVN, работающий с потенциально поврежденными данными - PullRequest
0 голосов
/ 03 января 2012

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

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

Мой самый безопасный шаг сейчас заключается в повторной проверке репо на сервере, что требует очень много времени и его желательно избегать.

Большое спасибо за ваше время.Адам.

Ответы [ 2 ]

3 голосов
/ 03 января 2012

SVN обнаруживает изменения файлов путем сравнения файлов. Afaik метки времени файла вообще не учитываются.

Мой самый безопасный шаг сейчас заключается в повторной проверке репо на сервере, что требует очень много времени и его желательно избегать.

Я не правильно понимаю, что вы пытались объяснить, действительно ли повреждено хранилище на сервере SVN или ваша рабочая копия повреждена? Если последнее верно, то вы действительно можете попытаться

a) «очистить», а затем «обновить» вашу рабочую копию или

b) сначала верните свою рабочую копию, затем обновите ее или

c) получить новую рабочую копию.

Если репозиторий SVN поврежден, вы должны как минимум сделать резервную копию своей рабочей копии как можно скорее на тот случай, если вы не сможете восстановить репозиторий SVN на сервере (в этом случае у вас по крайней мере будет последняя копия в вашем рабочем каталоге и может попытаться настроить новый репозиторий SVN и проверить содержимое этого рабочего каталога.

1 голос
/ 04 января 2012

Вы, похоже, обеспокоены вопросом о сервере и хранилище?Просто попросите кого-нибудь запустить проверку svnadmin в хранилище или запустить команду svnadmin dump, чтобы выгрузить хранилище в файл дампа.Если вы делаете дамп, не пытайтесь проверить.Если они работают нормально, то с репозиторием все в порядке.

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

...