Linux

是否可以創建一個“虛擬”SVN 儲存庫,其自己的文件夾指向另一個儲存庫中的文件夾(如 FS 掛載)?

  • September 11, 2015

我在基於 CentOS 的伺服器上託管了一個 Subversion 儲存庫。有幾個團隊需要訪問儲存庫的不同部分。我想允許不同的使用者查看 repo 的不同部分,並隱藏其他部分。

我知道可以通過基於路徑的規則設置每個目錄的權限,因此例如我可以將designer使用者限制為 r/w onmyrepo/myapp/media/images/myrepo/myapp/core/css/. 但這意味著設計者必須使用這兩個特定的 URL 來訪問imagescss文件夾。沒有我授予他讀取權限,他不能只使用根 URL。

我希望他能夠自由地瀏覽目錄樹,但只能看到他有權訪問的文件夾及其父母。

如果這是一個正常文件系統,我會使用bind --mount命令在/home/designer/like/home/designer/css等中創建一組受限目錄/home/designer/images

可以在 SVN 回購中完成同樣的事情嗎?

至少,我是否可以創建第二個“虛擬”儲存庫,其中包含虛擬連結到主記憶體儲庫中真實文件夾的文件夾(例如images, )?css

是的,這是可能的,這是SVN 外部的完美案例

在您的情況下,它可以是:

  • 在通常的樹之外的 repo 中的新物理文件夾
  • 此 DESIGNER-ROOT 中的一些“邏輯”子文件夾,創建為帶有外部的真實文件夾的連結(在 repo 內的任何其他位置,甚至在外部 repo 中)

檢出 DESIGNER-ROOT 將把設計師 WC 中的所有外部作為真正的樹(儲存庫中不存在),送出會將所有數據傳輸到真正的外部源

但請注意:如果您在創建定義後更改(重命名、移動)外部源,這些更改將不會自動反映在定義中,您必須手動更正

引用自:https://serverfault.com/questions/721057