一、前言
像我們平時開發中,總會遇到代碼沖突的問題,什么是代碼沖突?就是別人對這個文件做了修改,你也對這個文件做了修改,當你提交或者更新代碼的時候,你會發現你們修改的文件存在沖突的地方。那我們要怎么解決這個問題呢?本文主要是針對SVN下代碼沖突問題是怎么解決的進行相關說明。
二、步驟
①與服務器有沖突的文件
點擊Update以后,如果出現以下情況(出現四個文件),就說明需要解決沖突
點擊更新后,出現了如上四個文件
- .mine結尾的是我改過的基礎文件
- .r18結尾的是SVN基礎版本文件
- .r23結尾的是SVN上別人修改過的文件
②出現文件沖突的時候:你有四個選擇:
♦以我修改的為准
不管服務器目前的那個版本,比如另外一個人和我同時修改了同一個地方,但是我覺得我寫的更好。右擊沖突文件,選擇 Mark Resolved(標記為解決(K))
在彈出框中選擇第二個(Resolve the conflict by using my version of the file.),點擊OK即可。
然后,同步視圖中文件狀態如下:
選擇文件提交到SVN服務器即可。
♦以別人修改的為准
選擇服務器目前最新的版本,比如我原來想改這個文件,后來發現別人已經改好了,就可以選擇這個
跟上面操作步驟一樣
- 右擊沖突文件,選擇 Mark Resolved:
- 在彈出框中選擇第三個(Resolve the conflict by using the incoming of the file.),點擊OK即可
♦以服務器的基礎版本為准
選擇服務器的基礎版本,比如我改着改着,后來別人說這個功能不做了,其他人修改的也要取消,就可以選擇這個
- 右擊沖突文件,選擇 Mark Resolved
- 在彈出框中選擇第四個(Resolve the conflict by using base version of the file.),點擊OK即可
♦別人改的也需要,我改的也需要,這樣就要進行編輯沖突,將我們的兩個文件合成一個
右擊沖突文件,選擇 Edit Conflicts
在彈出框中,對兩個文件進行合並,以左邊的那個為准。合並完以后,保存
右擊沖突文件,選擇 Mark Resolved,在彈出框中選擇第一個(Conflicts have been resolved in the file.),點擊OK即可
最后將合並后的文件提交到SVN服務器。