2008-12-13 66 views
2

Subversion客戶端可能以任何方式破壞存儲庫嗎?這可能是任何形式的破壞性破壞,但它必須是無法從備份中恢復存儲庫才能恢復的。SVN客戶端能否破壞存儲庫?

顯然,刪除所有內容然後檢查它是否容易通過回滾來修復,所以我正在尋找更多的東西。

回答

6

Subversion客戶端可以與服務器通信以訪問存儲庫,也可以使用URL直接訪問存儲庫。在第一種情況下,服務器負責存儲庫,因此客戶端不能直接「中斷」它。在第二種情況下,客戶端負責存儲庫,因此客戶端中的錯誤可能會影響存儲庫。

+0

我認爲你的迴應意味着:它可以,但只有當你直接訪問file://協議。我對嗎? – 2008-12-13 21:10:58

2

理論上,它不能破壞存儲庫,因爲Subversion使用原子提交(Subversion中的錯誤)。

但是,忽略訪問控制,客戶端當然可以在新版本中移動/複製/刪除存儲庫的內容。舊版本繼續存在。理論上,您可以通過審慎使用svn命令或由管理員刪除以後的修訂版本來恢復這些舊版本。

在一般情況下,它是非常安全的,但看的訪問控制:http://svnbook.red-bean.com/en/1.5/svn-book.html#svn.serverconfig.httpd.authz

注:格雷戈已經暗示,它使用本地存儲庫,當作爲客戶端的庫直接訪問文件系統是稍微複雜一些。基本上,你必須信任Subversion。

1

如果客戶端可以通過任何需要存儲庫恢復的方式來破壞存儲庫,那麼Subversion會認爲這是一個非常嚴重的錯誤。

快速查看他們的bug跟蹤器,發現他們偶爾會出現庫損壞錯誤,但是如果沒有bug,客戶端無法徹底破壞存儲庫。