SVN衝突解決和注意事項

00潤物無聲00發表於2015-12-20

    在我們用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的負責人來管理,維護好程式碼,提高開發的進度。

相關文章