人人IT網

人人IT網

當前位置: 主頁 > 開發管理 > SVN >

Subversion (SVN)

時間:2016-10-21 11:26來源:Internet 作者:Internet 點擊:
Subversion (SVN) - Repository (版本庫) 備份與恢复 創建時間: 2014-02-07 21:48 最近更新: 2016-02-19 14:19 目錄 定位 "版

Subversion (SVN) - Repository (版本庫) 備份與恢复

創建時間:
2014-02-07 21:48
最近更新:
2016-02-19 14:19

定位 "版本庫根目錄"

安裝 VisualSVN Server 時,必須指定 "版本庫根目錄"。

依次進行以下操作:
VisualSVN Server - VisualSVN Server (Local) - right click menu - Properties - Storage - Repositories Root
即可查看此 VisualSVN Server 所在計算機上 "版本庫根目錄"。

TonyRemark: 這似乎决定了:在一台計算機上,不可能同時存在多個 "版本庫根目錄"。

備份/導入 版本庫

通過复制得到備份文件

使用 VisualSVN Server 創建的每一個 "版本庫",在上述 "版本庫根目錄" 中,都有一個對應的同名文件夾,复制此文件夾,即可實現對該 "版本庫" 的備份。

日常操作中,直接复制整個 "版本庫根目錄" 即可備份所有 "版本庫"。

注意:大量網文中提及,如果复制時,有進程正在訪問版本庫,則此复制備份在還原時或還原後會出錯。Tony 認为停止 "VisualSVNServer" 服務可避免此問題。

大型團隊開發,無法停止服務、或需要同步備份,可使用 svnadmin 等命令行工具進行備份操作。常見命令有:

  • svnadmin dump
  • svnadmin hotcopy
  • svnsync

另:有網友說,最省事的方法莫過於安裝 Collabnet SVN Edge 版 SVN 服務器,這個 SVN 服務器安裝包的安裝配置很省心,基本一個安裝包裝完就能用,自帶了 SVN 服務器控制台,通過控制台就可以配置進行 SVN 庫的備份。

導入 "复制得到的備份文件"

2014-07-17 Tony GHOST 系統之後,全新安裝 VisualSvnServer275 並依次創建 User 與 Group,然後按以下步驟逐一導入原有的版本庫,一次成功:
VisualSVN Server - VisualSVN Server (Local) - Repositories - right click menu - all task - Import Existing Repository
導入完畢後的 D:\Repositories 與 D:\Repositories_Old 文件數、文件夾數、大小完全一致,

備份/導入 版本庫 - 測試記錄

在 VisualSVN Server 的 "Repositories Root" 目錄中 (通常为 "D:\Repositories"),除了以下三個文件,會有 N 個 "庫文件夾" 對應着每一個庫。2016-02-19 將 D230S 上的全部 "庫文件夾" 复制至 FtnDwjPc 上,然後在 "VisualSVN Server - 左側導航欄 - 庫名 - 右鍵 - 所有任務 - Manage Security..." 將 group 與 user 設置为本機的值 (未設時,因 D230S 與 FtnDwjPc 上的設置不同,導致報權限錯誤),即可正常使用。

  • "D:\Repositories\VisualSVN-GlobalWinAuthz.ini"
  • "D:\Repositories\groups.conf"
  • "D:\Repositories\htpasswd"

Resource

  1. SVN 版本庫無損遷移與自動備份
  2. SVN 備份
  3. SVN 備份策略
  4. SVN 庫遷移及備份方法詳解
  5. SVN 遷移及備份

From:ITEYE
頂一下
(0)
0%
踩一下
(0)
0%
------分隔線----------------------------
發表評論
請自覺遵守互聯網相關的政策法規,嚴禁發布色情、暴力、反動的言論。
評價:
表情:
驗證碼:點擊我更換圖片
欄目列表
推薦內容