資源描述:
《linux下svn的配置及svn常用命令》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、SVN是Subversion的簡(jiǎn)稱,是一個(gè)開放源代碼的版本控制系統(tǒng),svn服務(wù)器有兩種運(yùn)行方式:獨(dú)立服務(wù)器和借助apache運(yùn)行。右圖是一個(gè)svn的工作流程,它可以很方便用戶的代碼編寫。1.首先安裝SVN:”sudoapt-getinstallsubversion”.查看svn的版本和確定是否安裝成功:”svnserve–version”.2.創(chuàng)建svn倉庫:“svnadmincreatemsm”,其中msm是版本倉庫的名字,倉庫建立好了以后會(huì)有出現(xiàn)一個(gè)倉庫名字的文件夾,文件夾下面有conf等幾個(gè)目錄和文件.接下來就需要設(shè)置版本倉庫的權(quán)限了。這里說明一下:版本庫之間是獨(dú)立的。(下
2、圖為msm的目錄)3.增加用戶修改conf文件夾下的authz文件,該配置文件采用”基于路徑授權(quán)”的策略,中括號(hào)里指定路徑,以下列出對(duì)各用戶的授權(quán)。包括只讀r,讀寫rw。沒有列出的用戶,則不允許訪問。還可以對(duì)用戶分組,列子如下用戶組格式:[groups]<用戶組名>=<用戶1>,<用戶2>其中,1個(gè)用戶組可以包含1個(gè)或多個(gè)用戶,用戶間以逗號(hào)分隔。版本庫目錄格式:[<版本庫>:/項(xiàng)目/目錄]@<用戶組名>=<權(quán)限><用戶名>=<權(quán)限>,其中,方框號(hào)內(nèi)部分可以有多種寫法:/,表示根目錄(倉儲(chǔ)目錄)及以下。根目錄是svnserve啟動(dòng)時(shí)指定的,我們指定/opt/svndata。這樣,/
3、就是表示對(duì)全部版本庫設(shè)置權(quán)限。權(quán)限主體可以是用戶組、用戶或*,用戶組在前面加@,*表示全部用戶。權(quán)限可以是w、r、wr和空,空表示沒有任何權(quán)限。下圖是我增加的用戶組:(注意:等號(hào)后留有空格)增加后:4.修改用戶密碼添加用戶后就要為用戶設(shè)置密碼了,打開conf/passwd文件:輸入格式為,[users]<用戶1>=<密碼1>如:admin=admin<用戶2>=<密碼2>如:username2=password2…...左邊是我的添加:5.啟動(dòng)svn對(duì)用戶權(quán)限、密碼的控制需要啟動(dòng)SVN對(duì)用戶權(quán)限、密碼的控制,不然的話你就只能讀而不能寫了。需要修改svnserve.conf文件,我
4、們只要取消下面幾條前面的#號(hào)注釋就好了:(注意,不要留有空格)anon-access=readauth-access=writepassword-db=passwdauthz-db=authz如:重啟svn服務(wù)輸入:”svnserve-d-r/usr/bin”-d表示以后太服務(wù)方式執(zhí)行,-r就表示root,后面是我的svn根目錄出現(xiàn)如下錯(cuò)誤解決辦法,要先把svnserve進(jìn)程干掉。找到服務(wù)對(duì)應(yīng)進(jìn)程編號(hào),命令為:“ps-e
5、grepsvnserve”,使用kill命令,之后再使用啟動(dòng)命令,如圖:6.給svn倉庫空間中的DB目錄分配寫入權(quán)限(不然不能寫入文件):“sudochmod7
6、77-R倉庫目錄”;然后在瀏覽器中輸入:“http://localhost/svn/msm”,可以查看msm目錄下面是svn的標(biāo)準(zhǔn)目錄結(jié)構(gòu)PS.svn的常用命令:1.修改監(jiān)聽端口:svn監(jiān)聽默認(rèn)為3960,如修改為9999:‘“svnserve--listen-port9999-d-r/usr/bin”變量含義簡(jiǎn)單介紹:/home/svn:SVN安裝目錄new_project:要?jiǎng)?chuàng)建的倉儲(chǔ)名稱192.85.1.2/xabeschrm中的“xabeschrm”:目標(biāo)倉儲(chǔ)名稱/trunk/0-Src/xabeschrm/WebRoot中的“xabeschrm”:項(xiàng)目名稱1.將文件ch
7、eckout到本地目錄svncheckoutpath(path是服務(wù)器上的目錄)例如:svncheckoutsvn://192.85.1.2/xabeschrm/trunk/0-Src/xabeschrm/WebRoot簡(jiǎn)寫:svnco2.往倉儲(chǔ)中添加新的文件svnaddfile(這里恐怕后面要添加目錄吧?。├纾簊vnaddtest.jsp(添加test.jsp)svnadd*.jsp(添加當(dāng)前目錄下所有的php文件)3.將改動(dòng)的文件提交到倉儲(chǔ)svncommit-m“LogMessage“[-N][--no-unlock]PATH(如果選擇了保持鎖,就使用–no-unlock開
8、關(guān))例如:svncommit-m“addtestfileformytest“test.jsp簡(jiǎn)寫:svnci4.加鎖/解鎖svnlock-m“LockMessage“[--force]PATH例如:svnlock-m“l(fā)ocktestfile“test.jspsvnunlockPATH5.更新到某個(gè)版本svnupdate-rmpath例如:svnupdate如果后面沒有目錄,默認(rèn)將當(dāng)前目錄以及子目錄下的所有文件都更新到最新版本。svnupdate-r158test.jsp(將倉儲(chǔ)