![源代碼版本管理_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/28/4761309a-6ee2-4454-9766-7d0706e049a4/4761309a-6ee2-4454-9766-7d0706e049a41.gif)
![源代碼版本管理_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/28/4761309a-6ee2-4454-9766-7d0706e049a4/4761309a-6ee2-4454-9766-7d0706e049a42.gif)
![源代碼版本管理_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/28/4761309a-6ee2-4454-9766-7d0706e049a4/4761309a-6ee2-4454-9766-7d0706e049a43.gif)
![源代碼版本管理_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/28/4761309a-6ee2-4454-9766-7d0706e049a4/4761309a-6ee2-4454-9766-7d0706e049a44.gif)
![源代碼版本管理_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/28/4761309a-6ee2-4454-9766-7d0706e049a4/4761309a-6ee2-4454-9766-7d0706e049a45.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(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建立版本庫(repository
2、)。這點(diǎn)和VSS一樣,我們需要一個(gè)庫來存放版本信息。創(chuàng)建方式有兩種通過SubVersion的命令行或者通過TortoiseSVN的圖形界面來創(chuàng)建。我們就直接通過TortoiseSVN創(chuàng)建,例如我想在D盤建立一個(gè)文件夾SVNServices用來放版本庫,然后在其中建立一個(gè)EMIData的文件夾作為我的項(xiàng)目EMI的版本庫,這是我對EMIData點(diǎn)擊右鍵-TortoiseSVNCreate Repository here即可將EMIData最為一個(gè)版本庫,這是你會(huì)發(fā)現(xiàn)EMIData文件夾中多了很多的文件。1.1.4啟動(dòng)SVN服務(wù)。到這里我們的SubVersion其實(shí)還沒有啟動(dòng),我們在cmd命令行輸入
3、: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如果你看到了EMIData這個(gè)空的庫就說明你已經(jīng)成功建立了版本庫。1.1.
4、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帳號,在users這個(gè)節(jié)下面添加jianxin160=123456即可,即用戶名,密碼都是123456。1.1.6將項(xiàng)目導(dǎo)入到版本庫。例如我的項(xiàng)目EMI在F:/EMI這個(gè)文件夾,我通過右鍵Tortoise
5、SVNImport在彈出對話框的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)行版本管理。但是如果我們在Visual Studio中通過輸入svn:/來導(dǎo)入和管理我們的項(xiàng)目未免有些不足,而且平時(shí)查看還要靠TortoiseSVN的Repo-
6、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_svn.dll,libdb44.dll,mod_authz_svn.so,mod_dav_svn.so復(fù)制到Apache安裝目錄Modules中;在A
7、pache的conf文件夾中找到httpd.conf文件,將#LoadModule dav_module modules/mod_dav.so前面的”#”號去掉,然后在后面添加:LoadModule dav_svn_module modules/mod_dav_svn.so注意它一定要放在緊跟其后的一行的后面。但是此時(shí)Apache還不知道如何處理,我們在httpd.conf最后面添加DAV svnSVNPath D:/SVNServices/EMIData這是我們就可以通過在瀏覽器中輸入:/repository/EMI來瀏覽我們的項(xiàng)目了??梢钥闯鐾ㄟ^使用apach
8、e我們將路徑做了相應(yīng)的映射。1.2.3配置Apache認(rèn)證方式。我們到上一步為止誰都可以輸入/repository/EMI來訪問我們的項(xiàng)目,當(dāng)然不行了。我們這里通過apache的基本http認(rèn)證來對項(xiàng)目進(jìn)行保護(hù)。在apache的bin目錄有一個(gè)htpasswd工具,通過它我們來創(chuàng)建用戶信息。例如:通過命令行htpasswd -c D:/SVNServices/EMIData/MyApacheUser/passwd.conf jianxin160然后提示輸入密碼,我輸入123456 再次輸入,就會(huì)在D:/SVNServices/EMIData/MyApacheUse
9、r(之前建立好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,在Location標(biāo)簽(上面我們添加的)中加入以下內(nèi)容:AuthType BasicAuthName svn reposAuthUserFile D:/SVNServices/EMIData/MyApacheUser/passwd.confReq
10、uire valid-user這是再輸入/repository/EMI就需要用戶名密碼了。1.2.4安裝AnkhSVN。(下載地址: Studio的插件,有了它SVN和Visual Studio結(jié)合就更天衣無縫了。安裝之后我么發(fā)現(xiàn)在VS中File-Open就多了一個(gè)選項(xiàng)“SubVersion Project”,我們在這里輸入/repository/EMI就可以看到我們的解決方案文件(我第一輸入后只有/repository,關(guān)閉VS又打開才看到/repository/EMI)E
11、MI.sln打開就可以將整個(gè)工程下載到本地,這時(shí)注意要在Location中輸入你要將副本保存在哪個(gè)位置。好了到此位置整個(gè)SVN的配置結(jié)束了。1.3SVN配置注意1.3.1按照上面做過后,其他人還是不能用,原因很簡單,這樣的IP找不到你的SVN服務(wù)器。解決方法:如果你是在局域網(wǎng)就換成你在局域網(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
12、服務(wù)器時(shí)最好先ping一下然后在瀏覽器中輸入對應(yīng)地址試試,如果發(fā)現(xiàn)ping不通對方主機(jī)很可能是防火墻問題,注意包括各種防火墻)1.4SVN的使用1.4.1使用SVN,在VS中添加項(xiàng)目后,以后不需要每次都從File-OpenSubVersion Project來打開,而只需要直接打開副本中對應(yīng)的解決方案文件。1.4.2對一個(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)
13、-輸入一個(gè)任意的名稱-URL輸入/update_1.2.x-確定-選中你剛才添加的遠(yuǎn)程站點(diǎn)-完成-選中Subclipse-執(zhí)行安裝操作2.2窗口-打開透視圖-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上的所有工
14、程,右擊你想下載的工程-檢出為-下一步-完成。SVN代碼管理的一些基本操作如下。2.6基本操作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灰色向右且中間有
15、個(gè)加號的箭頭:本地比SVN上多出的文件2.7.4藍(lán)色向左且中間有個(gè)加號的箭頭:SVN上比本地多出的文件2.7.5灰色向右且中間有個(gè)減號的箭頭:本地刪除了,而SVN上未刪除的文件2.7.6藍(lán)色向左且中間有個(gè)減號的箭頭: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ò)誤是由于
16、該行的前面有空格引起的,把左邊多出的空格刪除掉即可;2.8.2在上面講的3.2步輸入U(xiǎn)RL(svn://SVN_PRJ)點(diǎn)下一步出現(xiàn)svn://SVN_PRJnon-existentinrevision7錯(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-minitialimport-usernametest-passwordpasswd可進(jìn)行上傳操作2.9
17、.3進(jìn)入你要檢出的目錄,在命令行下運(yùn)行svncheckoutsvn://test-usernametest-passwordpasswd可進(jìn)行檢出工程的操作2.9.4在命令行下運(yùn)行svncommittest.txt-mmodified-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ì)
18、市面上有許多版本控制系統(tǒng),如微軟的VSS、TeamCoherence、SVN等,從這三款的使用經(jīng)驗(yàn)來看,SVN最強(qiáng)大了,對源代碼的語言沒有限制,還可以管理word文件,而且有大量的用戶群,如Apache基本會(huì)管理的軟件,與VSS比較有以下1優(yōu)點(diǎn):1. 1支持重命名,這對 Java 開發(fā)來說非常重要。為了得到更好的代碼,開發(fā)中需要經(jīng)常進(jìn)行重構(gòu),重構(gòu)就經(jīng)常涉及到文件的重構(gòu)名,而重命名中 VSS中是不被支持的。1.2開發(fā)的時(shí)候不一定要鎖定。一方面導(dǎo)致重構(gòu)不方便,另一方面,不能離線開發(fā),使用 SVN就不同,可以帶回家繼續(xù)開發(fā),回來后,提交就行了。1.3多平臺(tái)。可以支持多個(gè)平臺(tái)下的操作,有windows和linux平臺(tái),支持32位、64位。1.4更好的客戶端支持。Eclipse 中的 VSS Plugin 不如它的 SVN Plugin 好用。一個(gè)在 Windows 下用的 SVN 客戶端 TortoiseSVN 也比VSS 的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度洗滌設(shè)備智能化改造升級工程合同
- 2025年度廣場場地租賃及文化活動(dòng)執(zhí)行合同
- 2025年度電子元器件材料采購合同
- 2025年度新型環(huán)保材料建筑工具租賃服務(wù)合同
- 2025年度體育場館設(shè)施建設(shè)勞務(wù)分包勞動(dòng)合同
- 2025年度礦產(chǎn)資源購銷合同范本
- 2025年度綠色建筑項(xiàng)目施工維修分包合同范本
- 2025年健身行業(yè)健身教練職業(yè)發(fā)展合同
- 2025年度國家貨運(yùn)代理貨物保險(xiǎn)代理合同
- 2025年度教育機(jī)構(gòu)品牌推廣合作合同
- 機(jī)器狗:技術(shù)成熟性能優(yōu)越場景剛需放量在即2025
- 2025年村民代表會(huì)議講話稿(3篇)
- (一模)烏魯木齊地區(qū)2025年高三年級第一次質(zhì)量語文試卷(含答案)
- 2025開工大吉蛇年大吉開門紅模板
- 人教版小學(xué)英語單詞表(按首字母排列)
- GB/T 45006-2024風(fēng)電葉片用纖維增強(qiáng)復(fù)合材料拉擠板材
- 鍋爐、壓力容器制造質(zhì)量手冊含程序文件-符合TSG07-2019《許可規(guī)則》
- 邏輯思維訓(xùn)練500題(帶答案)
- 炎癥性腸病共識(shí)2024
- 《單片機(jī)應(yīng)用技術(shù)》課件第1章
- 《中等強(qiáng)國視域下韓國的“新南方政策”研究》
評論
0/150
提交評論