在我們用VS進行項目合作開發的過程中,SVN的提交控制是至關重要的,大家不可避免的都遇到過SVN衝突的問題,開發的時候,應該認真學習SVN的知識,減少衝突,集中時間放在開發上。
解決衝突有三種方式:
A、放棄自己的更新,使用svn revert(回滾),然後提交。在這種方式下不需要使用svn resolved(解決)B、放棄自己的更新,使用別人的更新。使用最新獲取的版本覆蓋目標文件,執行resolved filename並提交(選擇文件—右鍵—解決)。
C、手動解決:衝突發生時,通過和其他用戶溝通之後,手動更新目標文件。然後執行resolved filename來解除衝突,最後提交。
具體步驟如下:
1、在當前目錄下執行“update”(更新)操作2、在衝突的文件上(選中文件--右鍵菜單—TortoiseSVN—Edit conflicts(解決衝突))
也可在VS中衝突的文件上(右擊--編輯衝突)
出現如下窗口
Theirs窗口爲服務器上當前最新版本
Mine窗口爲本地修改後的版本
Merged窗口爲合併後的文件內容顯示
3、如果要使用服務器版本,在Theirs窗口選中差異內容,右鍵,選擇Use this text block(使用這段文本塊)。同理如果要使用本地版本,在協商後,在Mine窗口右鍵,選擇Use this text block(使用這段文本塊)。
4.修改完成後,保存文件內容。
5.本地用戶在衝突目錄下,選中文件--右鍵菜單—TortoiseSVN—Resolved(解決)。會列出衝突的文件列表, 如果確認已經解決,點OK。
6.提交解決衝突後的文件;
SVN注意事項:
如果自己所負責的代碼分涉及到其他人了,禁止私自修改
1.先更新再提交。
2.提交的時候以“姓名—修改內容”格式進行
3.只提交自己修改的類,勿提交整個解決方案
4.調試完畢之後,只有運行無錯誤、生成無錯誤纔可提交!
5.儘量做到多提交(保留自己每一步變化的版本控制)
6.開發的時候最好還是有一個SVN的負責人來管理,維護好代碼,提高開發的進度。