1. 程式人生 > >svn分目錄許可權

svn分目錄許可權

很久之前搭了一個svn,因為公司的流程也不是很規範,然後設計、產品、android、ios的各種程式碼都在一個路徑底下,自己也沒有在意這些細節。但是產品經理有一天覺得這更新的東西太多了。所以想要分目錄。

最先想到的是多個路徑分開來,這個路徑更新設計,那個路徑更新產品。。。但是確認產品是想更新的地址不變,但是看到的內容不一樣。每個使用者對應自己許可權所檢視的目錄。

因為沒有弄過,所以只能藉助搜尋引擎,尋求答案。

最先看的一種方案:
每個使用者都指定一個新的目錄,把他要更新的內容的svn地址 新增到這個新的裡面來,
1、 新建一個資料夾或者svn專案路徑,然後在本地更新出來
2、 在新的svn目錄裡右擊檢視屬性,切換到subversion。(如下圖)


3、 點選properties -> new -> other (如下圖)

4、property name選擇svn:externals,並且在property value 列出他要更新的列表,勾選應用,點選ok。(如下圖)

5、 設定好了之後,在這個目錄更新程式碼,更新完後提交。
這樣以後他只要記住這個地址,然後也只要在這個目錄更新或者提交檔案。然後其他使用者只要迴圈上面的步驟即可。但是這個步驟實在太繁瑣。我還要幫他們一個個人去設定,我表示我很懶。

於是尋求另外一種更簡潔的方案。

然後發現了一種極其簡單的方式,開放根目錄所有使用者許可權,然後子目錄限制許可權。更新的時候就只會更新到他指定許可權的目錄內容。廢話不多說,直接貼程式碼:

<ol class="linenums"><li value="1" class="L0"><span class="pun">[</span><span class="pln">groups</span><span class="pun">]</span></li><li class="L1"><span class="pln">group1 </span><span class="pun">=</span><span class="pln"> yang1</span><span class="pun">,</span><span class="pln">yang2</span></li><li class="L2"><span class="pln">group2 </span><span class="pun">=</span><span class="pln"> yang1</span></li><li class="L3"><span class="pln">group3 </span><span class="pun">=</span><span class="pln"> yang2</span></li><li class="L4"><span class="pln"> </span></li><li class="L5"><span class="pun">[/]</span></li><li class="L6"><span class="lit">@group1</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> rw</span></li><li class="L7"><span class="pln"> </span></li><li class="L8"><span class="pun">[/</span><span class="pln">a</span><span class="pun">]</span></li><li class="L9"><span class="lit">@group2</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> rw</span></li><li class="L0"><span class="pun">*</span><span class="pln"> </span><span class="pun">=</span></li><li class="L1"><span class="pln"> </span></li><li class="L2"><span class="pun">[/</span><span class="pln">b</span><span class="pun">]</span></li><li class="L3"><span class="lit">@group3</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> rw</span></li><li class="L4"><span class="pun">*</span><span class="pln"> </span><span class="pun">=</span></li><li class="L5"><span class="pln"> </span></li><li class="L6"><span class="pun">[/</span><span class="pln">ab</span><span class="pun">]</span></li><li class="L7"><span class="lit">@group1</span><span class="pln"> </span><span class="pun">=</span><span class="pln"> rw</span></li></ol>

所有的使用者地址還是給根目錄的地址,但是yang1只能更新下根目錄下的a和ab目錄,而yang2可以更新下b和ab目錄。其他根據自己修改,是不是很簡單~