![SVN配置與使用教程.ppt_第1頁(yè)](http://file.renrendoc.com/FileRoot1/2019-11/25/d3f1d036-e9f7-4a90-8510-a1af382f08ef/d3f1d036-e9f7-4a90-8510-a1af382f08ef1.gif)
![SVN配置與使用教程.ppt_第2頁(yè)](http://file.renrendoc.com/FileRoot1/2019-11/25/d3f1d036-e9f7-4a90-8510-a1af382f08ef/d3f1d036-e9f7-4a90-8510-a1af382f08ef2.gif)
![SVN配置與使用教程.ppt_第3頁(yè)](http://file.renrendoc.com/FileRoot1/2019-11/25/d3f1d036-e9f7-4a90-8510-a1af382f08ef/d3f1d036-e9f7-4a90-8510-a1af382f08ef3.gif)
![SVN配置與使用教程.ppt_第4頁(yè)](http://file.renrendoc.com/FileRoot1/2019-11/25/d3f1d036-e9f7-4a90-8510-a1af382f08ef/d3f1d036-e9f7-4a90-8510-a1af382f08ef4.gif)
![SVN配置與使用教程.ppt_第5頁(yè)](http://file.renrendoc.com/FileRoot1/2019-11/25/d3f1d036-e9f7-4a90-8510-a1af382f08ef/d3f1d036-e9f7-4a90-8510-a1af382f08ef5.gif)
已閱讀5頁(yè),還剩32頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
SVN配置與使用教程,SVN安裝配置,1、軟件下載下載SVN1.6服務(wù)器程序。/servlets/ProjectDocumentList?folderID=91【注意】如果之前已經(jīng)安裝了TortoiseSVN客戶端,必須選擇與之配套的SVN服務(wù)端版本,否則會(huì)出現(xiàn)各種問(wèn)題,可以從TortoiseSVN的About菜單中看到與之對(duì)應(yīng)的Subversion版本!下載Subversion的Windows客戶端TortoiseSVN及簡(jiǎn)體中文語(yǔ)言安裝包【根據(jù)個(gè)人愛(ài)好而定】,2、服務(wù)器和客戶端安裝。服務(wù)器安裝,直接運(yùn)行安裝程序,根據(jù)提示安裝即可,這樣我們就有了一套服務(wù)器可以運(yùn)行的環(huán)境。安裝TortoiseSVN,同樣直接運(yùn)行安裝程序,按照提示安裝即可,不過(guò)最后完成后會(huì)提示是否重啟,其實(shí)重啟只是使svn工作拷貝在windows中的特殊樣式生效,與所有的實(shí)際功能無(wú)關(guān)。重啟完畢后安裝簡(jiǎn)體中文語(yǔ)言包,然后在隨便一個(gè)目錄右擊,就會(huì)發(fā)現(xiàn)多出了一些SVN相關(guān)菜單,選擇其中的TortoiseSVN,再選擇子菜單Settings,設(shè)置Language為中文(簡(jiǎn)體)。,3、建立SVN1.6版本庫(kù)(Repository)運(yùn)行Subversion服務(wù)器需要首先要建立一個(gè)版本庫(kù)(Repository),版本庫(kù)可以看作是服務(wù)器上集中存放和管理數(shù)據(jù)的地方。在安裝客戶端時(shí)默認(rèn)已經(jīng)創(chuàng)建了一個(gè)版本庫(kù),可以直接用這個(gè)庫(kù),或是根據(jù)需要重新建立一個(gè)庫(kù)。新建一個(gè)版本庫(kù)具體操作步驟如下首先建立d:svn空文件夾作為所有版本庫(kù)的根目錄。然后,進(jìn)入命令行并切換到subversion的bin目錄。輸入如下命令:svnadmincreateD:svnrepository1此命令在D:svn下建立一個(gè)版本庫(kù)repository1。repository1下面會(huì)自動(dòng)生成一些文件夾和文件。就會(huì)在目錄D:svnrepository下創(chuàng)建一個(gè)版本庫(kù)。如果在命令行中不識(shí)別svnserver命令,可以查看系統(tǒng)環(huán)境變量path中有無(wú)subversion/bin的條目,沒(méi)有就手動(dòng)加上。我們也可以使用TortoiseSVN圖形化的完成這一步:先建立空目錄E:svnrepository1,注意一定是要空的。然后在repository1文件夾上“右鍵-TortoiseSVN-CreateRepositoryhere”,然后可以選擇版本庫(kù)模式,這里使用默認(rèn)的FSFS即可,然后就創(chuàng)建了一系列文件夾和文件,同命令行建立的一樣。(可能有的版本不能直接選擇版本庫(kù)模式),4、配置SVN1.6用戶和權(quán)限用文本編輯器打開(kāi)E:svnrepository1conf目錄,修改svnserve.conf:將:#password-db=passwd改為:password-db=passwd即去掉前面的#注釋符,注意前面不能有空格。然后修改同目錄的passwd文件,增加一個(gè)帳號(hào):將:users#harry=harryssecret#sally=sallyssecret增加帳號(hào):users#harry=harryssecret#sally=sallyssecrettest=test,在svnserve.conf文件,這里行前凡是有#的都等于是被注釋忽略了,你可以把#去掉讓那一行生效,或者自己新添加行.里面的英文注釋已經(jīng)詳細(xì)說(shuō)明了各種設(shè)置的含義,最后你設(shè)置general小節(jié)中行前沒(méi)有#號(hào)的內(nèi)容為anon-access=noneauth-access=writepassword-db=passwd含義是:未驗(yàn)證用戶無(wú)任何權(quán)限(如果把none修改為read就是給予讀權(quán)限)已驗(yàn)證用戶給予寫權(quán)限(當(dāng)然也能讀)密碼數(shù)據(jù)存放到passwd文件中【注意】anon-access=none這條必須顯示寫出來(lái),否則會(huì)有一個(gè)默認(rèn)權(quán)限,別人可能不用登陸就能看到你的項(xiàng)目!然后打開(kāi)同目錄的passwd文件來(lái)設(shè)置帳戶:同樣,設(shè)置users小節(jié)中行前沒(méi)有#號(hào)的內(nèi)容,例如:admin=zhang含義是:用戶admin的密碼為zhang該目錄下還有一個(gè)authz的文件,用來(lái)針對(duì)不同的目錄給用戶分配不同的權(quán)限。,5、運(yùn)行獨(dú)立服務(wù)器安裝SVN1.6的bin目錄有svnservice.exe。在dos控制臺(tái)狀態(tài)下直接輸入svnservice-d-rD:svnrepository,(最后一個(gè)參數(shù)是剛才設(shè)置的版本庫(kù)的位置),此時(shí)console處于阻塞狀態(tài),讓它一直開(kāi)著就行,關(guān)閉它就意味著關(guān)閉了svnservice的服務(wù)了。建議你到控制面板-管理工具-服務(wù)中找到SVNService,右擊選擇屬性,再將其啟動(dòng)類型設(shè)置為自動(dòng),這樣每次開(kāi)機(jī)自動(dòng)啟動(dòng)服務(wù),不用手動(dòng)啟動(dòng)了。如果沒(méi)有這項(xiàng)服務(wù)的話,在命令行輸入sccreatesvnserverbinPath=“D:ProgramFilesSubversionbin”-service-rD:svnrepository“DisplayName=subversion“depend=Tcpipstart=auto【注意】“=”前沒(méi)有空格,之后必須有一個(gè)空格!,5、運(yùn)行獨(dú)立服務(wù)器此時(shí)subversion服務(wù)還沒(méi)有開(kāi)始,只是通過(guò)它的命令建立了版本庫(kù)。繼續(xù)在剛才的命令窗口輸入:svnserve.exe-d(等效于輸入svnserve.exe-daemon)svnserve將會(huì)在端口3690等待請(qǐng)求,-daemon(兩個(gè)短橫線)選項(xiàng)告訴svnserve以守護(hù)進(jìn)程方式運(yùn)行,這樣在手動(dòng)終止之前不會(huì)退出。注意不要關(guān)閉命令行窗口,關(guān)閉窗口會(huì)把svnserve停止。為了驗(yàn)證svnserve正常工作,使用TortoiseSVN-Repo-browser來(lái)查看版本庫(kù)。在彈出的URL對(duì)話框中輸入:svn:/localhost/svn/repository1點(diǎn)OK按鈕后就可以看見(jiàn)repo1版本庫(kù)的目錄樹(shù)結(jié)構(gòu)了,只不過(guò)這時(shí)repository1是個(gè)空庫(kù)。你也可以使用-root選項(xiàng)設(shè)置根位置來(lái)限制服務(wù)器的訪問(wèn)目錄,從而增加安全性和節(jié)約輸入svnserveURL的時(shí)間:svnserve.exe-daemon-rootdrive:pathtorepository以前面的測(cè)試作為例,svnserve將會(huì)運(yùn)行為:svnserve.exe-daemon-roote:svn然后TortoiseSVN中的版本庫(kù)瀏覽器URL縮減為:svn:/localhost/repository1,6、初始化導(dǎo)入打開(kāi)我的電腦,在你需要進(jìn)行版本控制的目錄上右擊,選擇TortoiseSVN,再選擇子菜單Import.,設(shè)置文件庫(kù)url為svn:/localhost點(diǎn)確定后就會(huì)提示文件正在導(dǎo)入.需要注意的是,這里是svn文件庫(kù)與svn服務(wù)是同一臺(tái)計(jì)算機(jī)的情況,所以可用localhost,其它機(jī)器如果要訪問(wèn)svn服務(wù),應(yīng)該用svn:/svn服務(wù)器的IP地址,例如svn:/25,下面就是將我們的數(shù)據(jù)(項(xiàng)目)導(dǎo)入到這個(gè)版本庫(kù),以后就由版本庫(kù)管理我們的數(shù)據(jù)。我們的任何改動(dòng)都回被版本庫(kù)記錄下來(lái),甚至我們自己丟失、改錯(cuò)數(shù)據(jù)時(shí)版本庫(kù)也能幫我們找回?cái)?shù)據(jù)。比如,在d:wwwroot下有個(gè)guestbook文件夾,里面存放的是編寫的留言簿程序。在此文件夾上“右鍵-TortoiseSVN-Import.”,在彈出對(duì)話框的“URLofrepository”輸入“svn:/localhost/repository1/guestbook”。在“Importmessage”輸入“導(dǎo)入整個(gè)留言簿”作為注釋。點(diǎn)OK后要求輸入帳號(hào)。我們?cè)谟脩裘兔艽a處都輸入test。完成后guestbook中的內(nèi)容全部導(dǎo)入到了svn:/localhost/repository1/guestbook。我們看到在e:svnrepository1沒(méi)有任何變化,連個(gè)guestbook文件夾都沒(méi)有建立,唯一的變化就是e:svnrepository1容量變大了。實(shí)際上我們?cè)磄uestbook中的內(nèi)容已經(jīng)導(dǎo)入repository1版本庫(kù)了,源guestbook文件夾可以刪除了。需要注意的是,這一步操作可以完全在另一臺(tái)安裝了TortoiseSVN的客戶機(jī)上進(jìn)行。例如運(yùn)行svnserve的主機(jī)的IP是2,則URL部分輸入的內(nèi)容就是“svn:/2”。,7、SVN1.6基本客戶端操作,1、取出(checkout)取出版本庫(kù)到一個(gè)工作拷貝:來(lái)到任意空目錄下,比如在f分區(qū)建立一個(gè)空文件夾f:work。“右鍵-SVNCheckout”。在“URLofrepository”中輸入“svn:/localhost/svn/repository1/guestbook”,這樣我們就得到了一份guestbook中內(nèi)容的工作拷貝。2、存入(checkin)/提交(commit)在工作拷貝中作出修改并提交:在guestbook工作拷貝中隨便打開(kāi)一個(gè)文件,作出修改,然后“右鍵-SVNCommit.”。這樣我們就把修改提交到了版本庫(kù),版本庫(kù)根據(jù)情況存儲(chǔ)我們提交的數(shù)據(jù)。在修改過(guò)的文件上“右鍵-TortoiseSVN-ShowLog”,可以看到對(duì)這個(gè)文件所有的提交。在不同的revision條目上“右鍵-Comparewithworkingcopy”,我們可以比較工作拷貝的文件和所選revision版本的區(qū)別。,沒(méi)安裝TortoiseSVN的計(jì)算機(jī)先安裝它。創(chuàng)建一個(gè)準(zhǔn)備用來(lái)存放版本控制工程的目錄,例如d:project,然后在我的電腦中右擊這個(gè)目錄,選擇SVN取出.,設(shè)置文件庫(kù)url為svn:/svn服務(wù)器的IP地址,接下來(lái)會(huì)問(wèn)你用戶名和帳號(hào),你就填寫前面搭建服務(wù)器端所設(shè)置的用戶admin密碼zhang點(diǎn)確定后就會(huì)提示文件正在取出到d:project,至此,SVN客戶端配置完成,你會(huì)看到d:project及其下面的文件都被標(biāo)記了綠色對(duì)勾,簡(jiǎn)單日常使用:要取得工程的當(dāng)前的最新版本,右擊d:project,選擇SVNupdate,你更改工程后,要將你的修改更新到SVN,右擊d:project,選擇SVNcommit,謹(jǐn)慎的話請(qǐng)先更新到SVN最新版本后再提交。創(chuàng)建服務(wù)sccreatesvnserverbinPath=C:ProgramFilesSubversionbinsvnserve.exe-service-rD:svnenergyDisplayName=energy_subversiondepend=Tcpipstart=autosccreatesvnserverbinPath=服務(wù)全名-service-r資源庫(kù)位置DisplayName=服務(wù)名depend=協(xié)議start=自動(dòng)。,SVN權(quán)限配置,在Subversion的使用當(dāng)中,存在“認(rèn)證”、“授權(quán)”兩個(gè)概念。認(rèn)證,即authentication,是指用戶名與密碼的認(rèn)證。授權(quán),即authorization,是指某用戶對(duì)某個(gè)目錄是否具備讀、寫權(quán)限的一種審核。這兩者配合作用,就組成了Subversion的整個(gè)帳戶管理體系。Subversion提供了面向目錄的帳戶權(quán)限管理功能,通過(guò)它,我們就可以很精確地實(shí)現(xiàn)項(xiàng)目目錄的訪問(wèn)控制。,背景假設(shè),一家電子元器件設(shè)備供應(yīng)商,其中有個(gè)ARM部門,專門負(fù)責(zé)ARM芯片的方案設(shè)計(jì)、銷售,并在北京、上海各設(shè)立了一個(gè)辦事處。對(duì)于工作日志,原先采用郵件方式發(fā)給經(jīng)理,但是這種方式有個(gè)缺點(diǎn),那就是不具備連續(xù)性,要看以前的日志必須一封一封郵件去查看,很麻煩。于是就想到利用Subversion,讓員工在自己電腦上編輯日志,然后利用svn傳送回來(lái),既方便員工自己編寫日志,又方便對(duì)日志的歸檔處理,而且提交日志的時(shí)候只需要執(zhí)行一下svncommit即可,比發(fā)送郵件還要簡(jiǎn)單的多。,svn服務(wù)器相關(guān)信息服務(wù)器地址:服務(wù)器OS:MSWindows2000ServerEdition中文版用于存放日志的代碼庫(kù)本地目錄:D:svnarmarm部門文檔的目錄結(jié)構(gòu)如下:arm部門名稱diary工作日志目錄headquarters總部工作日志目錄beijing北京辦日志目錄shanghai上海辦日志目錄ref公司公共文件參考目錄temp臨時(shí)文件目錄,人員情況morson,公司總經(jīng)理,不習(xí)慣使用電腦,更喜歡傳統(tǒng)的紙與筆,以及面對(duì)面的交流michael,arm事業(yè)部的部門經(jīng)理scofield,北京辦人員lincon,上海辦人員linda,總部協(xié)調(diào)員、秘書(shū)rory,單片機(jī)技術(shù)員,技術(shù)支持訪問(wèn)權(quán)限需求分析允許總經(jīng)理、部門經(jīng)理讀取所有文件。順便給他們開(kāi)放寫權(quán)限,以便體現(xiàn)對(duì)他們職位的尊重,雖然對(duì)于某些文件來(lái)說(shuō),他們?nèi)魮碛小皩憽睓?quán)限其實(shí)也沒(méi)什么用處除部門經(jīng)理外,所有其他人員,均只能看到本辦事處人員工作日志不允許匿名訪問(wèn)ref目錄只允許經(jīng)理和秘書(shū)讀寫,對(duì)其他人只讀temp目錄人人都可以隨意讀寫,1.啟動(dòng)Subversion服務(wù),在服務(wù)器端,打開(kāi)一個(gè)命令行窗口,用CD命令進(jìn)入Subversion安裝目錄下的bin目錄,運(yùn)行如下指令:svnserve-d-rE:svn其中的-d參數(shù)表示svnserve.exe將會(huì)作為一個(gè)服務(wù)程序運(yùn)行在后臺(tái),而-r參數(shù)表示將E:svn目錄指定為代碼庫(kù)的根目錄。這樣,當(dāng)客戶端使用類似svn://foo這樣內(nèi)容的URL來(lái)訪問(wèn)服務(wù)器時(shí)候,其所訪問(wèn)到的真實(shí)代碼庫(kù),其實(shí)就是E:svnfoo,2.建立代碼庫(kù),在服務(wù)器端的E:svn目錄下,建立一個(gè)名為arm的代碼庫(kù),命令如下:E:svnsvnadmincreatearm使用上述命令之后,如果不出問(wèn)題的話,在E:svn目錄下就會(huì)多出一個(gè)叫做arm的目錄,其下具備conf、dav、hooks、locks、db等子目錄或文件,此即一個(gè)名為arm的代碼庫(kù)。從此,通過(guò)svn://arm這樣的URL,我們就可以對(duì)這個(gè)代碼庫(kù)進(jìn)行訪問(wèn)了。接下來(lái)就要進(jìn)入本文的正題了,也就是權(quán)限配置部分了。其實(shí)進(jìn)入armconf目錄你就會(huì)發(fā)現(xiàn),它下面已經(jīng)存在三個(gè)寫了一些幫助信息和示例的配置文件,以幫助用戶盡早掌握其配置方法。這三個(gè)默認(rèn)的配置文件分別是svnserve.conf、passwd、authz。其中后兩者沒(méi)有后綴,對(duì)于windows系統(tǒng)的用戶來(lái)說(shuō),看起來(lái)總是有些怪異,所以在接下來(lái)的章節(jié)里面,我將它們兩個(gè)都給添加了個(gè)conf后綴,以便管理。,3.編輯代碼庫(kù)基礎(chǔ)配置文件,在服務(wù)器端,編輯代碼庫(kù)的armconfsvnserve.conf文件,如下:generalpassword-db=passwd.confanon-access=noneauth-access=writeauthz-db=authz.conf,4.管理用戶帳號(hào),在服務(wù)器端,新建armconfpasswd.conf文件,如下:usersmorson=ShowMeTheMoneymichael=mysecretpasswordscofield=hellolittilekillerlincon=asyouknows111rory=8809117linda=IlikeWorldCup2006,建立目錄訪問(wèn)權(quán)限控制文件,在服務(wù)器端,新建armconfauthz.conf文件,內(nèi)容如下:groupsg_vip=morsong_manager=michaelg_beijing=scofieldg_shanghai=lincong_headquarters=rory,lindag_docs=lindaarm:/g_manager=rw*=rarm:/diary/headquartersg_manager=rwg_headquarters=rwg_vip=r*=arm:/diary/beijingg_manager=rwg_beijing=rwg_vip=r*=arm:/diary/shanghaig_manager=rwg_shanghai=rwg_vip=r*=arm:/refg_manager=rwg_docs=rw*=rarm:/temp*=rw,6.導(dǎo)入代碼,在客戶機(jī)F:temp目錄下,建立好前述“背景假設(shè)”一節(jié)中描述的目錄結(jié)構(gòu),然后用命令F:tempsvnimportarmsvn://arm-usernamemichael-passwordmysecretpassword導(dǎo)入整個(gè)目錄結(jié)構(gòu)。這條指令的精確意思是,將arm目錄下面的所有東西,導(dǎo)入到那個(gè)名叫arm的代碼庫(kù)中去。如果你不指定源目錄,則svn會(huì)默認(rèn)將當(dāng)前目錄作為源目錄。比如說(shuō),你處于F:temp目錄下的時(shí)候,直接執(zhí)行svnimportsvn://arm,那么當(dāng)你取出你的代碼的時(shí)候,你會(huì)發(fā)現(xiàn),居然多了一層名為arm的目錄。結(jié)果,你就必須使用類似svn://arm/arm這樣怪異的URL,才能夠正確訪問(wèn)到你的代碼們。這一點(diǎn)粗看好像不是特別重要,不過(guò)聯(lián)想到前述的目錄授權(quán)規(guī)則,可都是按照標(biāo)準(zhǔn)的項(xiàng)目目錄結(jié)構(gòu)來(lái)設(shè)計(jì)的。突然之間,你項(xiàng)目的根目錄之上,多出了一個(gè)名為arm的目錄,那么我們的所有目錄授權(quán)規(guī)則,基本上都要全部改過(guò)了,否則除了根目錄,你永遠(yuǎn)會(huì)得到一個(gè)莫名其妙的“accessdenied”。由于Subversion在這一步驟上的界面不夠人性化,因此這是初學(xué)者很容易弄混的地方之一。,7.測(cè)試,在服務(wù)器上,打開(kāi)一個(gè)DOSPrompt窗口,輸入如下指令:svncosvn://arm-no-auth-cache-usernamerory-password8809117我們應(yīng)該得到如下目錄結(jié)構(gòu):Armdiaryheadquartersreftemp然后修改ref目錄下任意文件并提交,服務(wù)器將會(huì)報(bào)錯(cuò)“Accessdenied”,Bingo!,詳細(xì)說(shuō)明,下面將詳細(xì)兩個(gè)配置文件:svnserve.conf和authz.conf,通過(guò)對(duì)配置逐行的描述,來(lái)闡明其中的一些細(xì)節(jié)含義。這里首先要注意一點(diǎn),任何配置文件的有效配置行,都不允許存在前置空格,否則程序可能會(huì)出錯(cuò),給你一個(gè)Optionexpected的提示。,svnserve.conf,首先,我們告訴svnserve.exe,用戶名與密碼放在passwd.conf文件下。當(dāng)然,你可以改成任意的有效文件名,比如默認(rèn)的就是passwd:password-db=passwd.conf接下來(lái)這兩行的意思,是說(shuō)只允許經(jīng)過(guò)驗(yàn)證的用戶,方可訪問(wèn)代碼庫(kù)。目前只允許readwritenone三種值anon-access=noneauth-access=write接下來(lái)就是最關(guān)鍵的一句呢,它告訴svnserve.exe,項(xiàng)目目錄訪問(wèn)權(quán)限的相關(guān)配置是放在authz.conf文件里:authz-db=authz.conf,authz.conf之用戶分組,armconfauthz.conf文件的配置段,可以分為兩類,group是一類,里面放置著所有用戶分組信息。其余以arm:/開(kāi)頭的是另外一類,每一段就是對(duì)應(yīng)著項(xiàng)目的一個(gè)目錄,其目錄相關(guān)權(quán)限,就在此段內(nèi)設(shè)置。首先,我們將人員分組管理,以便以后由于人員變動(dòng)而需要重新設(shè)置權(quán)限時(shí)候,盡量少改動(dòng)?xùn)|西。我們一共設(shè)置了5個(gè)用戶分組,分組名稱統(tǒng)一采用g_前綴,以方便識(shí)別。當(dāng)然了,分組成員之間采用逗號(hào)隔開(kāi):,groups#任何想要查看所有文檔的非本部門人士g_vip=morson#經(jīng)理g_manager=michael#北京辦人員g_beijing=scofield#上海辦人員g_shanghai=lincon#總部一般員工g_headquarters=rory,linda#小秘,撰寫文檔g_docs=linda注意到?jīng)]有,linda這個(gè)帳號(hào)同時(shí)存在“總部”和“文檔員”兩個(gè)分組里面,這可不是寫錯(cuò)了,是因?yàn)镾ubversion允許這樣設(shè)置。它意味著,這個(gè)人所擁有的權(quán)限,將會(huì)比他的同事rory要多一些,這樣的確很方便。,authz.conf之項(xiàng)目根目錄,接著,對(duì)項(xiàng)目根目錄做了限制,該目錄只允許arm事業(yè)部的經(jīng)理才能修改,其他人都只能查看:arm:/g_manager=rw*=rarm:/表示這個(gè)目錄結(jié)構(gòu)的相對(duì)根節(jié)點(diǎn),或者說(shuō)是arm項(xiàng)目的根目錄。其中的arm字樣,其實(shí)就是代碼庫(kù)的名稱,即前面用svnadmincreate命令創(chuàng)建出來(lái)的那個(gè)arm。這里的表示接下來(lái)的是一個(gè)組名,不是用戶名。因?yàn)槟壳癵_manager組里面只有一個(gè)michael,你當(dāng)然也可以將g_manager=rw這一行替換成michael=rw,而表達(dá)的意義完全一樣。*表示“除了上面提到的那些人之外的其余所有人”,也就是“除了部門經(jīng)理外的其他所有人”,當(dāng)然也包括總經(jīng)理那個(gè)怪老頭*=r則表示“那些人只能讀,不能寫”,authz.conf之項(xiàng)目子目錄,然后,我們要給總部人員開(kāi)放日志目錄的讀寫權(quán)限:arm:/diary/headquartersg_manager=rwg_headquarters=rwg_vip=r*=這個(gè)子目錄的設(shè)置有些特色,因?yàn)閺男枨蠓治鲋形覀冎溃@個(gè)子目錄的權(quán)限范圍要比其父目錄小,它不允許除指定了的之外其他任何人訪問(wèn)。在這段設(shè)置中,我們需要注意以下幾點(diǎn):為了表示diaryheadquarters這個(gè)目錄,我們必須使用arm:/diary/headquarters這樣的格式。這里最后一行的*=表示,除了經(jīng)理、總部人員、特別人士之外,任何人都被禁止訪問(wèn)本目錄。這一行是否可以省略呢?不行,因?yàn)闄?quán)限具備繼承性,子目錄會(huì)自動(dòng)擁有父目錄的權(quán)限。若沒(méi)有這一行,則所有帳號(hào)都可以讀取/diary/headquarters目錄下的文件。*=這一句的目的,就是割斷權(quán)限繼承性,使得管理員可以定制某個(gè)目錄及其子目錄的權(quán)限,從而完全避開(kāi)其父目錄權(quán)限設(shè)置的影響。之所以這兒需要將g_vip=r一句加上,就是因?yàn)榇嬖谏鲜鲞@個(gè)解釋。如果說(shuō)你沒(méi)有明確地給總經(jīng)理授予讀的權(quán)力,則他會(huì)和其他人一樣,被*=給排除在外。各個(gè)配置行之間,沒(méi)有先后順序一說(shuō)。也就是說(shuō),如果我將本段配置的*=這一行挪到最前面,完全不影響整個(gè)配置的最終效果。,接下來(lái)我們看看這一段:arm:/refg_manager=rwg_docs=rw*=r這里的主要看點(diǎn),就是g_docs組里面包含了一個(gè)linda帳號(hào),她也同時(shí)在g_headquarters組里面出現(xiàn),這就意味著,linda將具備對(duì)/ref和diaryheadquarters兩個(gè)目錄的讀寫權(quán)限,authz.conf之目錄表示法,在前面的描述中,我們都采用repos:/some/dir這樣的格式來(lái)表示項(xiàng)目的某個(gè)目錄,比如上一小節(jié)中的arm:/diary/headquarters。而實(shí)際上,Subversion允許你采用/some/dir這樣的格式,即不指定代碼庫(kù)的方式來(lái)表示目錄,此時(shí)的目錄就匹配所有項(xiàng)目。對(duì)于使用svnserve的用戶來(lái)說(shuō),只有當(dāng)svnserve運(yùn)行的時(shí)候使用了-r參數(shù),并且讓多個(gè)代碼庫(kù)共享同一個(gè)目錄權(quán)限文件(即authz.conf或authz)時(shí),不指明代碼庫(kù)名稱才有可能惹麻煩。一般情況下,我們對(duì)每個(gè)代碼庫(kù)都會(huì)獨(dú)立使用配置文件,畢竟每個(gè)項(xiàng)目的目錄結(jié)構(gòu),都有很大不同,混在一起意義不大。因此一般來(lái)說(shuō),為簡(jiǎn)潔起見(jiàn),都可以不指明代碼庫(kù)名稱。本文全都指明了代碼庫(kù)名稱,主要是為了將來(lái)擴(kuò)展成同一個(gè)配置文件,以方便配合Apache服務(wù)器。對(duì)于使用Apache的用戶來(lái)說(shuō),它們二者可有著很大的不同,因?yàn)榇藭r(shí)往往習(xí)慣于使用一個(gè)公共的目錄權(quán)限配置文件。如果你使用了SVNParentPath指令,則指定版本庫(kù)的名字是很重要的,因?yàn)榧偃裟闶褂煤笳?,那?some/dir部分就會(huì)與所有代碼庫(kù)項(xiàng)目的/some/dir目錄匹配。如果你使用SVNPath指令,則這兩種表示方式就沒(méi)有什么區(qū)別了,畢竟只有一個(gè)版
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代中藥藥物分析方法的創(chuàng)新與應(yīng)用
- 光棍低保申請(qǐng)書(shū)
- 少先隊(duì)員申請(qǐng)書(shū)怎么畫(huà)
- 蘇書(shū)2025年度離婚協(xié)議書(shū)中關(guān)于婚后財(cái)產(chǎn)分割的特別約定
- 電子競(jìng)技文化的國(guó)際傳播與接受度分析
- 現(xiàn)代企業(yè)智能供應(yīng)鏈建設(shè)的策略分析
- 2025年度智能家居安防系統(tǒng)安裝合同
- 2025年度國(guó)際供應(yīng)鏈合作合同范本
- 電子商務(wù)的物流配送優(yōu)化與管理
- 2025年度新型環(huán)保動(dòng)力船舶租賃合作協(xié)議
- 《社會(huì)主義市場(chǎng)經(jīng)濟(jì)理論(第三版)》第一章社會(huì)主義市場(chǎng)經(jīng)濟(jì)基礎(chǔ)論
- 銀行授信盡職調(diào)查課件
- 河北省縣市鄉(xiāng)鎮(zhèn)衛(wèi)生院社區(qū)衛(wèi)生服務(wù)中心基本公共衛(wèi)生服務(wù)醫(yī)療機(jī)構(gòu)名單目錄地址2415家
- 視頻號(hào)精細(xì)化運(yùn)營(yíng)培訓(xùn)課件
- 土木工程專業(yè)畢業(yè)論文任務(wù)書(shū) 土木工程專業(yè)電大畢業(yè)論文
- (完整版)漢密爾頓焦慮量表(HAMA)
- 電力電子技術(shù)全套課件
- 編外人員錄用審批表
- 倪海廈《天紀(jì)》講義
- 建設(shè)年飼養(yǎng)240萬(wàn)只蛋雛雞培育基地項(xiàng)目可行性研究報(bào)告
- 黃金太陽(yáng)漆黑的黎明金手指
評(píng)論
0/150
提交評(píng)論