Svn

從 SVN 到 GIT:類似於 authz 的東西?

  • March 26, 2012

我們目前有一個 SVN 儲存庫設置並希望切換到 GIT,但我們目前不確定哪種 GIT 設置適合我們。

我們目前正在使用 SVN (w/Authz) + Apache (w/ WebDAV & LDAP)。我們將 Authz 用於 SVN,因為我們需要對儲存庫中的子目錄進行精細的訪問控制(不是每個使用者都應該讀/寫所有目錄)。

有沒有辦法移植這個 Authz 權限文件,讓 GIT 倉庫使用這個權限控制?或者有沒有其他方法可以通過單個文件控制 GIT 的權限?請記住,我們已經安裝了 LDAP,因此權限文件應該簡單地將使用者名映射到授權目錄。

看起來你可能有點過早地跳到了 git(順便說一下,它不是首字母縮寫詞)——因為 git 的數據儲存和訪問控制模型與 SVN 完全不同。

每個儲存庫的訪問控制並不難。雖然我手頭沒有任何配置範例,但如果您使用 HTTPS 訪問,應該不難模擬,因為身份驗證和授權模型與 SVN 非常相似。對於每個分支的訪問控制,我知道它可以使用 gitolite 來完成(雖然預設情況下這是一個 SSH 訪問系統,但它可能會被修改為使用 HTTPS 並稍微考慮一下)。

從理論上講,您可能可以使用一些精心設計的鉤子對寫入進行基於路徑的訪問,但對於讀取訪問控制,您真的不能這樣做,因為 git 的整個模型是跨整個 repo 送出的,所以您可以不要阻止人們查看 repo 中的所有數據。

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