2011-08-31 167 views
4

我目前在一臺服務器上使用一個svn存儲庫,但使其更安全。我在另一臺服務器上設置了另一個svn存儲庫,我如何使用主服務器上的svn中的信息來鏡像我的輔助服務器上的svn?將svn備份到另一個svn存儲庫

+0

rsync浮現在腦海...... – cdhowie

+0

您使用FSFS存儲(默認)還是BDB?如果是BDB,只需移動文件即可。 – Rup

+0

你想要什麼?文件的備份或svn倉庫的鏡像? – MADMap

回答

3

您可以使用SVN本身的svnsync,它能夠複製到其他服務器,但要注意複製的存儲庫是隻讀的。最好的辦法是通過post-commit-hook腳本將每個提交複製到備份服務器上。

+0

不是一個很大的問題:我會說備份通常是隻讀的。恕我直言,svnsync是正確的工具。 –

2

您是否考慮將第二個副本存儲在轉儲中?在我看來是保存svn倉庫備份的最佳方式。

下windowsyou可以使用下面的命令:

svnadmin dump YourRepositoryPath > YourBackupName.svn 

在Linux下你可以使用下面的命令:

svnadmin dump YourRepositoryPath | gzip > YourBackupName.svn.gz 

也許並不直接回答你的問題,但也許一個想法不同的解決方案的問題。

最佳, 科技教育

+0

另一個dummyes解決方案將有2個存儲庫。並且您可以創建您的commit.sh腳本,該腳本將自動在2個不同的存儲庫中提交。但我相信你這樣做...... – Stefano

0

您可以考慮使用svk,雖然它不是積極地開發了。

+0

SVK不是用於備份目的。這就像Git或Bazaar。它的目的是脫機工作。 – khmarbaise

+0

鑑於OP想要鏡像他們的主要存儲庫,我認爲SVK比迄今爲止所得到的任何答案都更適合該法案。據我所知,所有其他建議都需要定期執行任務。 –

1

如果您打開商業解決方案Subversion Clustering會保持同步並允許在羣集中的所有節點上進行讀寫。這也適用於廣域網。

相關問題