1。其實避免的衝突最好的辦法就是: 專案人在配合工作的時候,彼此之間很好的交流(我們都是面對面坐著)
2。當出現衝突的時候,svn會生成三個臨時檔案
1.filename.mine 儲存者本地的修改過的檔案。
2.filename.roldrev 儲存者上次update的基礎版本檔案
3.filename.rnewrev 儲存著客戶端剛從伺服器上接收來的版本。
3。當遇到衝突的時候有3種方法解決衝突
1.手動合併**,解決衝突。
2.選擇乙個衝突出現時產生的臨時檔案來覆蓋當前檔案。
3.執行svn resolved filename 命令來放棄當前檔案的本地的所有修改。
4。一旦你解決了檔案的衝突(手動合併**),另一件要做的事情是執行 svn resolved filename 命令,告訴svn你已經解決了衝突,svn會去刪除3個臨時檔案
5。手動合併**
<<<<<<<<<<<<<<.mine
abcd
efhi
>>>>>>>>>>>>>>>>.r2
從<<<<<<<<<<<<<<.mine到**********==是你在衝突區做的修改
從**********==到》.r2是伺服器版本在衝突區做的修改
然後我們修改為
abcd
efhi
然後執行 svn resolved filename。
手動合併**完成。
7。利用生成三個檔案解決衝突
1)svn checkout test.m
c test.h
可以看到test.h有衝突。
2)ls -a test.h*
test.h.mine
test.h.r1
test.h.r2
可以看到生成了三個臨時檔案
3)cp test.h.r1 test.h
4)svn resolved test.h
8。使用svn revert解決衝突
1)svn upldate test.hc test.h
2)svn revert test.h
3)ls -a test.h*
test.h
可以發現用revert解決衝突後,生成的三個臨時檔案也沒有了,所以不需要執行 svn resolved test.h。
9。提交修改給版本庫(svn ci)
1)svn commit test.h -m "add code"
10。檢查專案版本歷史(svn log, svn diff, svn cat, svn list)
1)svn log 提供指定版本的建立者,日期,修改路徑等。2)svn diff 顯示特定修改的行級資訊
3)svn cat 取得特定版本的檔案顯示在螢幕上
4)svn list 顯示乙個目錄在特定版本存在的檔案
SVN解決衝突的辦法
解決版本衝突的命令。在衝突解決之後,需要使用svn resolved來告訴subversion衝突解決,這樣才能提交更新。衝突發生時,subversion會在work copy中儲存所有的目標檔案版本 上次更新版本 當前獲取的版本,即別人提交的版本 自己更新的版本 目標檔案。假設檔名是sandwic...
linux上SVN解決衝突的辦法
工程師a修改了a.txt的第一行,提交了。工程師b也修改了a.txt的第一行,然後執行svn up,這時svn提示了 以下,你開始扮演工程師b的角色了 svn up 在 a.txt 中發現衝突。選擇 p 推遲,df 顯示全部差異,e 編輯,mc 我的版本,tc 他人的版本,s 顯示全部選項 我一般選...
SVN衝突錯誤解決辦法
svn錯誤 locked try performing 的解決辦法 用svn外掛程式update或commit的時候,發生如下異常 svn working copy c project xx xx web test locked try performing cleanup 解決辦法 第一步 找到本...