Может ли клиент SVN сломать репозиторий? - PullRequest
2 голосов
/ 13 декабря 2008

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

Очевидно, что все удаляется, а затем проверяется, что это легко исправить просто с помощью отката, поэтому я ищу что-то большее.

Ответы [ 3 ]

6 голосов
/ 13 декабря 2008

Клиент Subversion может либо обратиться к серверу для доступа к хранилищу, либо использовать URL-адрес file:// для прямого доступа к хранилищу. В первом случае сервер отвечает за хранилище, поэтому клиент не может напрямую «сломать» его. Во втором случае клиент отвечает за хранилище, поэтому ошибки в клиенте могут повлиять на хранилище.

2 голосов
/ 13 декабря 2008

Теоретически, он не может повредить хранилище, поскольку Subversion использует атомарные коммиты (несмотря на ошибки в Subversion).

Однако, игнорируя контроль доступа, клиенты, конечно, могут перемещать / копировать / удалять содержимое репозитория в новых ревизиях. Старые ревизии продолжают существовать. Теоретически вы всегда можете вернуться к этим старым ревизиям либо с разумным использованием команд svn, либо администратором, удалившим более поздние ревизии.

В целом, это довольно безопасно, но посмотрите на контроль доступа: http://svnbook.red -bean.com / ru / 1.5 / svn-book.html # svn.serverconfig.httpd.authz

Примечание: как отметил Грег, это немного сложнее при использовании локального репозитория, так как клиент имеет прямой доступ файловой системы к репозиторию. По сути, вы должны доверять Subversion.

1 голос
/ 15 декабря 2008

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

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

...