5、SVN學(xué)習(xí)之svn的權(quán)限設(shè)置

在一個(gè)項(xiàng)目中有多個(gè)成員共同開(kāi)發(fā),其中各自所負(fù)責(zé)的模塊并不相同,所以svn給其分配的權(quán)限也要不同,以防止zhangsan負(fù)責(zé)的模塊被lisi修改而造成麻煩。

1、假設(shè)公司要開(kāi)發(fā)一個(gè)項(xiàng)目名稱(chēng)為cms,并采用svn進(jìn)行版本控制,svn管理人員首先會(huì)在svn的root目錄下新建一個(gè)cms的工廠(chǎng)。命令如下:

1.jpg

2、項(xiàng)目經(jīng)理會(huì)在自己的電腦上新建一個(gè)cms項(xiàng)目,并且把項(xiàng)目的基本結(jié)構(gòu)建立起來(lái),假如cms項(xiàng)目,有UI開(kāi)發(fā)、code開(kāi)發(fā)、test測(cè)試三個(gè)文件夾。UI開(kāi)發(fā)下面又有html開(kāi)發(fā)與js開(kāi)發(fā)。各目錄下又分別有一個(gè)文件。如下圖所示:

2.jpg

3、由svn管理人員在svnserve.conf文件中打開(kāi)password-db = passwd authz-db = authz ,即把前面 的#號(hào)去掉。password-db = passwd意思是說(shuō)用戶(hù)與密碼對(duì)應(yīng)的數(shù)據(jù)保存在passwd文件中。 authz-db = authz 一些權(quán)限的信息保存在文件authz中。打開(kāi)文件passwd向里面添加用戶(hù)信息,如下圖所示:

3.jpg

4、打開(kāi)文件authz,在里面設(shè)置組與相應(yīng)的權(quán)限。添加的內(nèi)容如下所示:其中g(shù)_admin=admin意思為admin用戶(hù)隸屬于權(quán)限組g_admin,g_ui=zhangsan,lisi意思是zhangsan,lisi隸屬于權(quán)限組g_ui;g_code=wangwu意思是wangwu隸屬于權(quán)限組g_code;g_test=zhaoliu,qianqi意思是zhaoliu,qianqi隸屬于權(quán)限組g_test。[/]
@g_admin=rw *=r 的意思是權(quán)限組g_admin對(duì)所有的目錄都有讀與寫(xiě)的權(quán)限。而其它用戶(hù)則只有讀(r)的權(quán)限。[/ui/html] zhangsan=rw 的意思是:zhangsan對(duì)目錄/ui/html有讀與寫(xiě)的權(quán)限。[/ui/js] lisi=rw意思是lisi對(duì)目錄/ui/js有讀與寫(xiě)的權(quán)限。[/code] @g_code=rw的意思是g_code權(quán)限組對(duì)目錄/code有讀與寫(xiě)的權(quán)限。[/test] @g_test=rw的意思是g_test權(quán)限組對(duì)目錄/test有讀與寫(xiě)的權(quán)限。
Xml代碼 收藏代碼

    g_admin=admin  
    g_ui=zhangsan,lisi  
    g_code=wangwu  
    g_test=zhaoliu,qianqi  
      
    [/]  
    @g_admin=rw  
    *=r  
    [/ui/html]  
    zhangsan=rw  
    [/ui/js]  
    lisi=rw  
    [/code]  
    @g_code=rw  
    [/test]  
    @g_test=rw  

5、項(xiàng)目經(jīng)理在本地創(chuàng)建相應(yīng)的項(xiàng)目后,然后在空白處右擊鼠標(biāo)選擇Import,如下圖所示:

4.jpg

點(diǎn)擊后出現(xiàn)如下圖所示對(duì)應(yīng)框,點(diǎn)擊OK

5.jpg

然后會(huì)出現(xiàn)讓登錄的對(duì)話(huà)框,這里添加admin用戶(hù)名與密碼。

6.jpg

點(diǎn)擊OK后相應(yīng)的項(xiàng)目信息就會(huì)傳到svn服務(wù)器對(duì)就的cms工廠(chǎng)中。如下圖所示

7.jpg

6、在本地假設(shè)有目錄D:\study_source\svn\cms_d\admin,這個(gè)目錄是假設(shè)的項(xiàng)目經(jīng)理的計(jì)算機(jī)。項(xiàng)目經(jīng)理要對(duì)cms項(xiàng)目進(jìn)行操作與編碼,那么他首先要從svn服務(wù)器上把項(xiàng)目cms下載到本地,如下圖所示的目錄就假設(shè)是項(xiàng)目經(jīng)理的計(jì)算機(jī)。

項(xiàng)目經(jīng)理只需要在打開(kāi)的文件夾上右鍵,然后選擇SVN Checkout就可以了,如下圖所示:

8.jpg

然后在彈出來(lái)的對(duì)話(huà)框中輸入如下圖所示的信息:

9.jpg

點(diǎn)擊OK后,如下圖所示:

10.jpg

7、項(xiàng)目經(jīng)理在code文件夾下新建一個(gè)文件2.code,如下圖所示:

11.jpg

然后在空白的地方點(diǎn)擊右鍵在出現(xiàn)的菜單中選擇svn commit,在出現(xiàn)的對(duì)話(huà)框中,如下圖所示:

12.jpg

點(diǎn)擊ok后就可以添加一個(gè)文件。項(xiàng)目經(jīng)理可以對(duì)任何一個(gè)文件夾與其里面的內(nèi)容進(jìn)行操作。

8、假設(shè)同樣有l(wèi)isi的一個(gè)文件目錄,D:\study_source\svn\cms_d\lisi,與項(xiàng)目經(jīng)理一樣先從svn服務(wù)器上把cms項(xiàng)目的內(nèi)容checkout到本地,然后讓lisi在目錄code下添加一個(gè)文件3.code,添加完成后在空白處右鍵選擇SVN commit,會(huì)出現(xiàn)如下菜單:


13.jpg

點(diǎn)擊Ok后,如下圖所示:


14.jpg

這樣就會(huì)提示出錯(cuò),其原因是因?yàn)椋琹isi只對(duì)ui/js目錄有讀寫(xiě)的權(quán)限,別的目錄只有讀的權(quán)限,這里要向code目錄添加一個(gè)文件,顯然是不對(duì)的。以這樣的原理就可以對(duì)所有的目錄分類(lèi)對(duì)待,從而答到權(quán)限控制的效果。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容