git強大的分支管理功能以及其可離線工作等特點使其被廣泛被運用到各大企業中。
既然有分支,那麼當然存在合併的問題,而git本身可離線工作的優勢卻也因此帶來了一個麻煩,既然是離線工作,那麼開發人員不需要每時每刻都要和服務器同步,因此會導致合併分支到master的時候有產生衝突,那麼如何解決衝突呢?
首先,在使用sourcetree合併分支的時候檢測到的衝突有兩種解決方式:
1)以“我的版本"解決衝突
2)以“他人的版本”解決衝突
這樣處理之後還是會存在衝突的可能性。那麼就需要手動解決衝突了。
打開存在衝突的文件,會看到如下標誌:
<<<<<<<標記衝突開始,後面跟的是當前分支中的內容。
HEAD指向當前分支末梢的提交。
=======之後,>>>>>>>之前是要merge過來的另一條分支上的代碼。
>>>>>>>之後的跟的是要合並過來的分支的名稱
此時只需要手工刪除衝突的文本,保留要合併的最新版本文件,然後刪除標誌,重新合併即可。