Linux
是否可以創建一個“虛擬”SVN 儲存庫,其自己的文件夾指向另一個儲存庫中的文件夾(如 FS 掛載)?
我在基於 CentOS 的伺服器上託管了一個 Subversion 儲存庫。有幾個團隊需要訪問儲存庫的不同部分。我想允許不同的使用者查看 repo 的不同部分,並隱藏其他部分。
我知道可以通過基於路徑的規則設置每個目錄的權限,因此例如我可以將
designer
使用者限制為 r/w onmyrepo/myapp/media/images/
和myrepo/myapp/core/css/
. 但這意味著設計者必須使用這兩個特定的 URL 來訪問images
和css
文件夾。沒有我授予他讀取權限,他不能只使用根 URL。我希望他能夠自由地瀏覽目錄樹,但只能看到他有權訪問的文件夾及其父母。
如果這是一個正常文件系統,我會使用
bind --mount
命令在/home/designer/
like/home/designer/css
等中創建一組受限目錄/home/designer/images
。可以在 SVN 回購中完成同樣的事情嗎?
至少,我是否可以創建第二個“虛擬”儲存庫,其中包含虛擬連結到主記憶體儲庫中真實文件夾的文件夾(例如
images
, )?css
是的,這是可能的,這是SVN 外部的完美案例
在您的情況下,它可以是:
- 在通常的樹之外的 repo 中的新物理文件夾
- 此 DESIGNER-ROOT 中的一些“邏輯”子文件夾,創建為帶有外部的真實文件夾的連結(在 repo 內的任何其他位置,甚至在外部 repo 中)
檢出 DESIGNER-ROOT 將把設計師 WC 中的所有外部作為真正的樹(儲存庫中不存在),送出會將所有數據傳輸到真正的外部源
但請注意:如果您在創建定義後更改(重命名、移動)外部源,這些更改將不會自動反映在定義中,您必須手動更正