源代碼版本管理_第1頁
源代碼版本管理_第2頁
源代碼版本管理_第3頁
源代碼版本管理_第4頁
源代碼版本管理_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 目錄 1 Visual Studio環(huán)境下源代碼版本管理 2 Eclipse環(huán)境源代碼版本管理 3體會(huì)1Visual Studio環(huán)境下源代碼版本管理1.1SubVersion+TortoiesSVN的配置1.1.1安裝SubVersion 。(下載地址:/servlets/ProjectDocumentList?folderID=8100&expandFolder=8100&folderID=91),例如我安裝到D:/SVN/SubVersion1.1.2安裝TortoiseSVN。(下載地址:1.1.3建立版本庫(re

2、pository)。這點(diǎn)和VSS一樣,我們需要一個(gè)庫來存放版本信息。創(chuàng)建方式有兩種通過SubVersion的命令行或者通過TortoiseSVN的圖形界面來創(chuàng)建。我們就直接通過TortoiseSVN創(chuàng)建,例如我想在D盤建立一個(gè)文件夾SVNServices用來放版本庫,然后在其中建立一個(gè)EMIData的文件夾作為我的項(xiàng)目EMI的版本庫,這是我對(duì)EMIData點(diǎn)擊右鍵-TortoiseSVNCreate Repository here 即可將EMIData最為一個(gè)版本庫,這是你會(huì)發(fā)現(xiàn)EMIData文件夾中多了很多的文件。1.1.4啟動(dòng)SVN服務(wù)。到這里我們的SubVersion其實(shí)還沒有

3、啟動(dòng),我們?cè)赾md命令行輸入:svnserve -daemon -root D:/SVNServices 這樣我們就可以啟動(dòng)SVN并且以D:/SVNServices作為根目錄。這里我要指明幾點(diǎn),第一就是輸入的命令中兩處都是兩個(gè)-,也就是-而不是-;第二點(diǎn)就是啟動(dòng)后cmd窗口使不能關(guān)閉的,這點(diǎn)類似于tomcat的命令窗口,但是和tomcat一樣我們后面會(huì)講到有更好的辦法不需要一直開著這個(gè)窗口。到了這里我么來檢測一下剛才建立的版本庫是否正確,右擊打開TortoiseSVN-Repo-browser在url處輸入svn:/Localhost/EMIData 如果你看到了EMIDa

4、ta這個(gè)空的庫就說明你已經(jīng)成功建立了版本庫。1.1.5分配用戶權(quán)限。我們的SVN服務(wù)器不是誰都可以訪問的,肯定需要配置權(quán)限。用文本編輯器打開D:/SVNService/EMIData/conf/svnserve.conf 我們將# password-db = passwd   改為: password-db =passwd 也就是說我們使用密碼驗(yàn)證,這里說明一點(diǎn)就是#后面的空格也要?jiǎng)h除。接著我們修改同目錄下的passwd文件,增加一個(gè)jianxin160帳號(hào),在users這個(gè)節(jié)下面添加jianxin160=123456即可,即用戶名,密碼都是1

5、23456。1.1.6將項(xiàng)目導(dǎo)入到版本庫。例如我的項(xiàng)目EMI在F:/EMI這個(gè)文件夾,我通過右鍵TortoiseSVNImport在彈出對(duì)話框的url處輸入“svn:/Localhost/EMIData/EMI”,點(diǎn)擊OK后輸入上面我們的用戶名和密碼(jianxin160和123456)。1.2Apache架設(shè)SVN服務(wù)    通過上面的操作其實(shí)我們已經(jīng)可以管理項(xiàng)目了,你已經(jīng)發(fā)現(xiàn)我們通過輸入svn:/Localhost/EMIData/EMI其實(shí)就可以在TortoiseSVN的Repo-Browser中查看項(xiàng)目文件,事實(shí)上SVN本省自帶的服務(wù)器就可以進(jìn)行版本管理。

6、但是如果我們?cè)赩isual Studio中通過輸入svn:/來導(dǎo)入和管理我們的項(xiàng)目未免有些不足,而且平時(shí)查看還要靠TortoiseSVN的Repo-Browser,況且還要一直開著cmd窗口多麻煩。有沒有更好的辦法,是有的,那就是我們通過Apache服務(wù)器來做。1.2.1安裝Apache。(到這里下載:/download.cgi)例如我的安裝到了D:/SVN/Apache下,安裝過程比較簡單我就不再說了。1.2.2關(guān)聯(lián)Apache和SVN。Apache是不知道SVN的,肯定也是不能管理它的。將SubVersion安裝目錄中bin目錄下的intl3_s

7、vn.dll,libdb44.dll,mod_authz_svn.so,mod_dav_svn.so復(fù)制到Apache安裝目錄Modules中;在Apache的conf文件夾中找到httpd.conf文件,將#LoadModule dav_module modules/mod_dav.so前面的”#”號(hào)去掉,然后在后面添加:LoadModule dav_svn_module modules/mod_dav_svn.so 注意它一定要放在緊跟其后的一行的后面。但是此時(shí)Apache還不知道如何處理,我們?cè)趆ttpd.conf最后面添加DAV svnSVNPath D:/SVNServic

8、es/EMIData 這是我們就可以通過在瀏覽器中輸入:/repository/EMI 來瀏覽我們的項(xiàng)目了??梢钥闯鐾ㄟ^使用apache我們將路徑做了相應(yīng)的映射。1.2.3配置Apache認(rèn)證方式。我們到上一步為止誰都可以輸入/repository/EMI來訪問我們的項(xiàng)目,當(dāng)然不行了。我們這里通過apache的基本http認(rèn)證來對(duì)項(xiàng)目進(jìn)行保護(hù)。在apache的bin目錄有一個(gè)htpasswd工具,通過它我們來創(chuàng)建用戶信息。例如:通過命令行htpasswd -c D:/SVNServices/EMIData/MyAp

9、acheUser/passwd.conf  jianxin160 然后提示輸入密碼,我輸入123456 再次輸入,就會(huì)在D:/SVNServices/EMIData/MyApacheUser(之前建立好MyApacheUser這個(gè)目錄)創(chuàng)建一個(gè)文件passwd.conf 里面包含用MD5加密的密碼。通過 htpasswd -m D:/SVNServices/EMIData/MyApacheUser/passwd.conf  miaoer1987再創(chuàng)建一個(gè)用戶。關(guān)于htpasswd操作我就不再細(xì)說。然后修改apache的httpd.conf,在Locati

10、on標(biāo)簽(上面我們添加的)中加入以下內(nèi)容:AuthType Basic AuthName "svn repos" AuthUserFile D:/SVNServices/EMIData/MyApacheUser/passwd.conf Require valid-user這是再輸入/repository/EMI就需要用戶名密碼了。1.2.4安裝AnkhSVN。(下載地址: Studio的插件,有了它SVN和Visual Studio結(jié)合就更天衣無縫了。安裝之后我么發(fā)現(xiàn)在VS中File-Open就多了一個(gè)選項(xiàng)“Sub

11、Version Project”,我們?cè)谶@里輸入/repository/EMI就可以看到我們的解決方案文件(我第一輸入后只有/repository,關(guān)閉VS又打開才看到/repository/EMI)EMI.sln打開就可以將整個(gè)工程下載到本地,這時(shí)注意要在Location中輸入你要將副本保存在哪個(gè)位置。好了到此位置整個(gè)SVN的配置結(jié)束了。1.3SVN配置注意1.3.1按照上面做過后,其他人還是不能用,原因很簡單,這樣的IP找不到你的SVN服務(wù)器。解決方法:如果你是在局域網(wǎng)就換成你在局域

12、網(wǎng)的IP,如果是靜態(tài)IP(很少吧)只需要換成你的靜態(tài)IP,如果你是在廣域網(wǎng)又沒有靜態(tài)IP那么可以通過域名(這種情況需要有個(gè)虛擬主機(jī)),如果你沒有虛擬主機(jī)又沒有靜態(tài)IP又需要在廣域網(wǎng)使用可以利用動(dòng)態(tài)域名綁定工具來實(shí)現(xiàn)。1.3.2局域網(wǎng)中使用一定要關(guān)閉SVN所在機(jī)器的防火墻。(在客戶機(jī)連接SVN服務(wù)器時(shí)最好先ping一下然后在瀏覽器中輸入對(duì)應(yīng)地址試試,如果發(fā)現(xiàn)ping不通對(duì)方主機(jī)很可能是防火墻問題,注意包括各種防火墻)1.4SVN的使用1.4.1使用SVN,在VS中添加項(xiàng)目后,以后不需要每次都從File-OpenSubVersion Project來打開,而只需要直接打開副本中對(duì)應(yīng)的解決方案文件。

13、1.4.2對(duì)一個(gè)文件編輯時(shí)SVN會(huì)自動(dòng)加鎖,編輯之后記得Commit。1.4.3關(guān)閉VS時(shí)如果有沒有Commit的文件,下次打開還可以Commit。1.4.4每次打開VS時(shí)建議獲得新版本。2Eclipse環(huán)境源代碼版本管理2.1幫助->軟件更新->查找并安裝->搜索要安裝的新功能部件->新建遠(yuǎn)程站點(diǎn)->輸入一個(gè)任意的名稱->URL輸入/update_1.2.x->確定->選中你剛才添加的遠(yuǎn)程站點(diǎn)->完成->選中Subclipse->執(zhí)行安裝操作2.2窗口->打開透視圖-&

14、gt;SVN資源庫研究->右鍵->新建->資源庫位置->URL中輸入svn://->輸入2.7定義的用戶名test和密碼password2.3提交工程2.3.1右擊工程->小組->共享項(xiàng)目->選擇SVN->選擇svn:/(如果沒有,則創(chuàng)建一個(gè)新的資源庫)->下一步->完成2.4下載工程2.5在SVN資源庫透視圖下,點(diǎn)開svn:/,會(huì)顯示出現(xiàn)在本機(jī)SVN上的所有工程,右擊你想下載的工程->檢出為->下一步->完成。SVN代碼管理的一些基本操作如下。2.6基本操

15、作2.6.1同步在MyEclipseJ2EE透視圖下,右擊你要同步的工程->小組->與資源庫同步->這時(shí)會(huì)進(jìn)入同步透視圖,會(huì)顯示出本機(jī)與SVN上內(nèi)容有不同的文件,雙擊文件名,會(huì)顯示出兩個(gè)文件中哪里不同;2.6.2提交在同步透視圖下有"灰色向右的箭頭,表示你本機(jī)修改過",右擊該文件,可以選擇提交操作;2.6.3覆蓋/更新在同步透視圖下有"藍(lán)色向左的箭頭,表示你本機(jī)修改過",右擊該文件,可以選擇覆蓋/更新操作;2.7圖標(biāo)說明2.7.1灰色向右箭頭:本地修改過2.7.2藍(lán)色向左箭頭:SVN上修改過2.7.3灰色向右且中間有個(gè)加號(hào)的箭頭:本地比

16、SVN上多出的文件2.7.4藍(lán)色向左且中間有個(gè)加號(hào)的箭頭:SVN上比本地多出的文件2.7.5灰色向右且中間有個(gè)減號(hào)的箭頭:本地刪除了,而SVN上未刪除的文件2.7.6藍(lán)色向左且中間有個(gè)減號(hào)的箭頭:SVN上刪除了,而本地未刪除的文件2.7.7紅色雙向箭頭:SVN上修改過,本地也修改過的文件。下面我們看一下SVN代碼管理過程中遇到的一些出錯(cuò)信息。2.8一些我遇到的出錯(cuò)信息2.8.1在上面講的3.2步輸入U(xiǎn)RL(svn:/)點(diǎn)下一步出現(xiàn)"svnserve.conf:12:Optionexpected"錯(cuò)誤你打開svnserve.conf文件中的第12行,該錯(cuò)誤是

17、由于該行的前面有空格引起的,把左邊多出的空格刪除掉即可;2.8.2在上面講的3.2步輸入U(xiǎn)RL(svn://SVN_PRJ)點(diǎn)下一步出現(xiàn)"svn://SVN_PRJnon-existentinrevision'7'"錯(cuò)誤URL錯(cuò)了,應(yīng)該輸入svn:/即可2.9SVN服務(wù)端自帶的基于命令行的操作語句2.9.1設(shè)置SVN服務(wù)端安裝目錄下的/bin到環(huán)境變量中;2.9.2在命令行下運(yùn)行svnimportc:/testsvn://test-m"initialimport"-u

18、sernametest-passwordpasswd可進(jìn)行上傳操作2.9.3進(jìn)入你要檢出的目錄,在命令行下運(yùn)行svncheckoutsvn://test-usernametest-passwordpasswd可進(jìn)行檢出工程的操作2.9.4在命令行下運(yùn)行svncommittest.txt-m"modified"-usernametest-passwordpasswd可進(jìn)行提交操作2.9.5在命令行下運(yùn)行svnupdate-rHEADtest.txt-usernametest-passwordpasswd可進(jìn)行更新操作注:上面講的可以換成外網(wǎng)IP,或者局域網(wǎng)IP皆可(即,在家里創(chuàng)建一個(gè)SVN服務(wù)端,即可在公司去訪問家里的SVN)。3體會(huì)市面上有許多版本控制系統(tǒng),如微軟的VSS、TeamCoherence、SVN等,從這三款的使用經(jīng)驗(yàn)來看,SVN最強(qiáng)大了,對(duì)源代碼的語言沒有限制,還可以管理word文件,而且有大量的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論