-
svn客戶端下載地址:https://tortoisesvn.net/downloads.html svn服務(wù)端下載地址:https://www.visualsvn.com/server/download
查看全部 -
什么是版本控制工具? ? 類似于銀聯(lián)卡,其特征和銀聯(lián)卡類似:受保護(hù)的和受約束的 為什么要用版本控制工具? ? 方便管理,防止代碼誤刪,防止弄亂別人的代碼,并且每個(gè)人寫(xiě)的代碼互相之間都不會(huì)產(chǎn)生沖突,方便下次再次編寫(xiě)代碼
查看全部 -
這個(gè).svn文件夾一定不能刪,它的作用是和服務(wù)端聯(lián)系。
查看全部 -
版本控制工具下載地址
TortoiseSVN客戶端
VisualSVN服務(wù)端
查看全部 -
svn版本控制工具
查看全部 -
對(duì)代碼的增刪改都在這個(gè)記錄里面
查看全部 -
版本控制工具下載:
客戶端TortoiseSVN:http://tortoisesvn.net/downloads.html
服務(wù)器端VisualSVN:http://www.visualsvn.com/server/download查看全部 -
版本控制工具查看全部
-
這節(jié)主要是比對(duì)
查看全部 -
客戶端下載地址:TortoiseSVN:http://tortoisesvn.net/downloads.html
服務(wù)器端下載地:VisualSVN:http://www.visualsvn.com/server/download查看全部 -
安裝兩個(gè)軟件:
1. SVN服務(wù)端,可以用VisualSVN Server,在這里可以新增用戶
2. SVN客戶端,可以用TortoiseSVN
第一次從某一個(gè)倉(cāng)庫(kù)下載代碼時(shí):在任意一個(gè)文件夾下右鍵單擊,SVN Checkout:
URL of repository: 服務(wù)端倉(cāng)庫(kù)路徑,本地地址: https://127.0.0.1:443(服務(wù)器端安裝時(shí)的選擇的端口)/svn/Test/
Checkout directory:
將遠(yuǎn)程倉(cāng)庫(kù)放在本地的文件夾路徑
基本操作:
SVN Commit:在本地倉(cāng)庫(kù)有更新時(shí),提交,要寫(xiě)注釋
SVN Update:拉遠(yuǎn)程的倉(cāng)庫(kù)
show log:針對(duì)文件,右鍵單擊,可以看到提交記錄,在提交的記錄里,右鍵單擊,可以選擇需要revert的版本(在下方的path里面也可以右鍵單擊,將文件保存到本地磁盤(pán))
在svn的根目錄也可以show log
沖突
有沖突時(shí)提交會(huì)產(chǎn)生三個(gè)文件,.mine是自己改好之后的代碼,rx,ry,x,y兩個(gè)數(shù)字較小者是我改之前的代碼,數(shù)字較大者,是服務(wù)端的代碼
1.如果要保留自己的版本,就用mine覆蓋原來(lái)的代碼,再次提交
2.如果認(rèn)為對(duì)方是正確的,就revert一下,這個(gè)時(shí)候已經(jīng)拿到了最新的代碼(不一定非要這樣操作,但是這樣方便)
3.如果認(rèn)為上一個(gè)版本是正確的,用版本較小的覆蓋(直接刪除改后綴名)
經(jīng)驗(yàn):如果Commit Failed!就不要點(diǎn)了ok繼續(xù)按update了,先把自己的代碼復(fù)制到一邊,再把那個(gè)文件revert,再u(mài)pdate,再把放在一邊的文件重命名復(fù)制到相同文件夾下,選中兩個(gè)沖突的文件,TortoiesSVN->diff,左邊是最新的代碼,右邊的是我的,解決沖突之后兩個(gè)人最好都update一下
與歷史記錄比對(duì):show log之后,同時(shí)選中兩個(gè)版本(比如現(xiàn)在到了第10版,那么要10/9先比較,看看有沒(méi)有差異,沒(méi)有差異,則比較9/8版,如果仍沒(méi)有差異,以此類推繼續(xù)比較),Compare revisions
查看全部 -
1在官網(wǎng)下載:服務(wù)端安裝包和客戶端安裝包
2在電腦a上安裝服務(wù)端,并創(chuàng)建一個(gè)項(xiàng)目倉(cāng)庫(kù)和創(chuàng)建2個(gè)用戶甲和乙
3甲和乙分別在各自電腦安裝客戶端,并用服務(wù)端創(chuàng)建的用戶名、密碼、連接服務(wù)端的url,連接到服務(wù)端
3.1此時(shí)甲和乙都擁有,將本地創(chuàng)建的文件提交到服務(wù)端,以及可以刪除服務(wù)端文件的權(quán)限(不過(guò)服務(wù)端都會(huì)保存操作記錄,以供方便追回)4需要一個(gè)人在服務(wù)端倉(cāng)庫(kù)創(chuàng)建一個(gè)項(xiàng)目的初始化版本,然后甲和乙各自更新到本地,各自開(kāi)發(fā)相應(yīng)的模塊;
5整個(gè)項(xiàng)目有太多文件,甲和乙每次只修改各自要操作的單個(gè)文件(對(duì)其他文件并不影響)
6記住,每次修改b文件前,一定先從服務(wù)端更新,將最新版本的b文件更新到本地,修改好以后,再提交到服務(wù)端
7如果甲想修改a文件,甲先將a文件的最新版(15版)從服務(wù)端更新到本地,然后進(jìn)行修改;
7.1這時(shí)乙也將a文件的最新版(15版)從服務(wù)端更新到其本地,進(jìn)行修改,修改之后,將a文件提交到服務(wù)端,這時(shí)a文件在服務(wù)端的記錄已經(jīng)是第16版了,而甲的本地a文件還是第15個(gè)版本,此時(shí)甲修改好了準(zhǔn)備提交到服務(wù)端,這是就會(huì)沖突,因?yàn)榉?wù)端已經(jīng)是16版了;
7.2面對(duì)沖突,如果甲和乙在a文件修改的代碼不在同一行,當(dāng)甲選擇繼續(xù)提交,svn會(huì)把甲和乙的修改同時(shí)合并到a文件,但是如果甲和乙在a文件修改的代碼在同一行,則svn會(huì)在甲的本地生成四個(gè)文件:四個(gè)文件個(gè)代表什么?看上一節(jié)筆記;
7.3一般開(kāi)發(fā)過(guò)程中,面對(duì)上述沖突,最好的解決辦法就是:甲先不提交,先把自己在本地修改好的a文件,備份一份,然后再?gòu)姆?wù)端更新到a文件的最新版即16版,私下和乙協(xié)商,這個(gè)文件該怎么寫(xiě),協(xié)商好以后,把最終結(jié)果修改到a文件,再提交到服務(wù)端即可;
8一旦將某個(gè)文件提交到服務(wù)端倉(cāng)庫(kù)以后,這個(gè)文件的所有修改記錄都會(huì)被服務(wù)端記錄,客戶端showlog就可以看到;
9從b文件創(chuàng)建,以及每一次的修改,都會(huì)有一個(gè)版本號(hào),每一次版本都會(huì)被保存在服務(wù)端,如果想恢復(fù)到之前的某個(gè)版本,直接從showlog查詢,恢復(fù)就行
10甲和乙各自的本地項(xiàng)目文件丟失以后,不用擔(dān)心,再?gòu)姆?wù)端更新下來(lái)即可,但是如果服務(wù)端所在的電腦的磁盤(pán)被格式化了,這個(gè)項(xiàng)目將永遠(yuǎn)徹底被刪除查看全部 -
1.分支不同 ==> update merge(svn自動(dòng)合并)
2.分支沖突 ==> 協(xié)商解決沖突,選擇一個(gè)正確的版本覆蓋(最新的正確直接Revert最新):
出現(xiàn)四個(gè)文件。黃色感嘆號(hào)代表SVN沒(méi)辦法自動(dòng)合并,因?yàn)锳 B修改的內(nèi)容一致。
第一個(gè)文件:共同修改內(nèi)容對(duì)比顯示。第二個(gè)文件:A你的代碼 第三個(gè)文件:A B修改之前的版本代碼 第四個(gè)文件:B的代碼
解決辦法:1.A和B討論,選擇哪個(gè)版本。就把那個(gè)版本恢復(fù)。
恢復(fù)方法:比如A的正確,就把第二個(gè)文件重命名為A的那個(gè)文件名,覆蓋。
若想恢復(fù)成A B之前的版本,用第三個(gè)文件覆蓋
若想恢復(fù)成B的,也是用第四個(gè)文件覆蓋,或者在第一個(gè)文件右擊,revert到現(xiàn)在服務(wù)器上的B的版本查看全部 -
18521查看全部
-
svn的基本操作: 1.我們?cè)谖覀兊捻?xiàng)目里邊進(jìn)行添加一個(gè)文件<就是我們從遠(yuǎn)程服務(wù)器上邊下載的項(xiàng)目Test>,比如:test.java文件。我們會(huì)看到一個(gè)問(wèn)號(hào)<?>,表示的是未提交的內(nèi)容(和服務(wù)端項(xiàng)目有差異)。 2.如何進(jìn)行提交我們寫(xiě)好的項(xiàng)目呢?我們?cè)谶@個(gè)項(xiàng)目里邊右擊鼠標(biāo),選擇svn commit,進(jìn)行項(xiàng)目的提交。當(dāng)提交成功的時(shí)候,我們發(fā)現(xiàn)之前添加文件上邊變成了對(duì)勾。 3.我們進(jìn)行commit時(shí),我們會(huì)在下邊的狀態(tài)看到status,status=modified,表示的是修改后的文件,status=missing,表示時(shí)刪除的文件。還有一個(gè)就是新添加的文件。
每次更新。刪除。增加后都要重新提交一次 svn版本控制工具,多人協(xié)作,需要安裝服務(wù)端和客戶端,服務(wù)端要建倉(cāng)庫(kù)和用戶,客戶端checkout輸入用戶名和密碼,和保存路徑;commit提交本地磁盤(pán)增刪改文件,可以留意藍(lán)問(wèn)號(hào)(新增),紅感嘆號(hào)(修改),綠鉤(已提交),還有提交時(shí)文件的status狀態(tài)是missing,modify等等
查看全部
舉報(bào)