自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

揭開SVN沖突神秘面紗

開發(fā) 項(xiàng)目管理
本文和大家學(xué)習(xí)一下SVN沖突問題,主要包括沖突如何產(chǎn)生和沖突的解決方法介紹,希望通過本文的學(xué)習(xí)大家能夠掌握如何避免和解決SVN沖突。

本節(jié)講解一下SVN沖突問題,隨著SVN的快速發(fā)展,SVN可以再多個(gè)操作系統(tǒng)中搭建,這是難免會(huì)遇到SVN沖突問題,這些沖突如何解決,本文就為大家一一講解。

1、如何產(chǎn)生SVN沖突
當(dāng)開發(fā)人員A和開發(fā)人員B從版本庫同時(shí)檢出文檔1.txt,而A和B同時(shí)修改了1.txt的同一地方,后提交的一方會(huì)在拷貝副本中產(chǎn)生沖突。
兩個(gè)工作拷貝,A拷貝中文件1.txt內(nèi)容為
dfqerq
123dfwre
B拷貝中文件1.txt內(nèi)容為
dfqerq
123erwrq
在B版本提交之前版本庫上的1.txt(base版本)內(nèi)容為
dfqerq
B拷貝先提交版本到版本庫中,以至于最新版本內(nèi)容變?yōu)?br /> dfqerq
123erwrq
此時(shí)A版本也提交則會(huì)產(chǎn)生沖突,無法提交,需要先svnupdate,此時(shí)會(huì)在A拷貝中產(chǎn)生三個(gè)臨時(shí)文件1.txt.rNew\1.txt.rOld\1.txt.mine,其中1.txt.rNew是最新版本,1.txt.rOld是base版本,1.txt.mine是A作者修改后的版本,在此例中內(nèi)容為
dfqerq
123dfwre
而update之后A拷貝中的1.txt內(nèi)容為
<<<<<<<.mine
dfqerq
123dfwre=======
dfqerq
123erwrq>>>>>>>.r18
其中<<<<<<<.mine與=======之間表示A修改后的內(nèi)容,=======與>>>>>>>.r18之間是版本服務(wù)器上的版本
2、解決SVN沖突
第一種,利用update的選項(xiàng)進(jìn)行SVN沖突解決,也就是說不管當(dāng)前拷貝副本是否是最新版本,都使用—accept參數(shù)作為沖突處理方式
--acceptARG:specifyautomaticconflictresolutionaction
('postpone','base','mine-conflict',
'theirs-conflict','mine-full','theirs-full',
'edit','launch')
(p)postpone-marktheconflicttoberesolvedlater//讓文件在更新完成之后保持沖突狀態(tài)。
(df)diff-full-showallchangesmadetomergedfile//使用標(biāo)準(zhǔn)區(qū)別格式顯示base修訂版本和沖突文件本身的區(qū)別。
(e)edit-changemergedfileinaneditor//用你喜歡的編輯器打開沖突的文件,編輯器是環(huán)境變量EDITOR設(shè)置的。
(r)resolved-acceptmergedversionoffile//完成文件編輯之后,通知svn你已經(jīng)解決了文件的沖突,它必須接受當(dāng)前的內(nèi)容—從本質(zhì)上講就是你已經(jīng)“解決了”沖突。
(mf)mine-full-acceptmyversionofentirefile(ignoretheirchange//丟棄新從服務(wù)器接收的變更,并只使用你查看文件的本地修改。
(tf)theirs-full-accepttheirversionofentirefile(losemychanges)//丟棄你對查看文件的本地修改,只使用從服務(wù)器新接收的變更。
(l)launch-launchexternaltooltoresolveconflict//啟動(dòng)一個(gè)外置程序來執(zhí)行沖突解決,這需要一些預(yù)先的準(zhǔn)備。
(h)help-showthislist//顯示所有在沖突解決時(shí)可能使用的命令。
第二種,在update時(shí)并不處理SVN沖突,利用svnresolve解決沖突
1、利用svnresolve--acceptbase選擇base版本,即1.txt.rOld作為最后提交的版本
--acceptARG:specifyautomaticconflictresolutionsource
('base','working','mine-conflict',
'theirs-conflict','mine-full','theirs-full')
2、手工修改1.txt文件,然后將當(dāng)前拷貝即1.txt作為最后提交的版本
svnresolve--acceptworking1.txt
3、svnresolve--accepttheirs-full1.txt使用1.txt.rNew作為最后提交的版本
4、svnresolve--acceptmine-full1.txt使用1.txt.mine作為最后提交的版本
5、svnresolve--acceptmine-conflict1.txt使用1.txt.mine的沖突部分作為最后提交的版本
5、svnresolve--accepttheirs-conflict1.txt使用1.txt.rNew的沖突部分作為最后提交的版本。本節(jié)關(guān)于SVN沖突問題介紹完畢。

 【編輯推薦】

  1. SVN使用手冊之入門篇
  2. SVN管理與應(yīng)用相關(guān)的資料參考手冊
  3. Windows下SVN服務(wù)配置和使用學(xué)習(xí)課堂
  4. SVN庫遷移及備份方法詳解
  5. SVN服務(wù)器安裝指導(dǎo)手冊
責(zé)任編輯:佚名
相關(guān)推薦

2015-08-20 13:43:17

NFV網(wǎng)絡(luò)功能虛擬化

2010-05-17 09:13:35

2014-03-12 11:11:39

Storage vMo虛擬機(jī)

2021-06-07 08:18:12

云計(jì)算云端阿里云

2009-09-15 15:34:33

Google Fast

2023-11-02 09:55:40

2016-04-06 09:27:10

runtime解密學(xué)習(xí)

2009-06-01 09:04:44

Google WaveWeb

2018-03-01 09:33:05

軟件定義存儲(chǔ)

2010-05-11 10:19:17

VMforceJava云計(jì)算

2015-09-06 10:54:29

HTTP網(wǎng)絡(luò)協(xié)議

2015-09-08 10:06:15

2010-09-17 14:57:34

JAVA數(shù)據(jù)類型

2010-06-17 10:53:25

桌面虛擬化

2011-08-02 08:59:53

2017-10-16 05:56:00

2021-07-28 21:49:01

JVM對象內(nèi)存

2021-08-11 09:01:48

智能指針Box

2021-05-25 09:01:21

Linux命令Bash histor

2021-09-17 15:54:41

深度學(xué)習(xí)機(jī)器學(xué)習(xí)人工智能
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)