一、前言
相信大家在公司都使用過SVN,使用SVN解決沖突跟Git差不多,這里我們簡單介紹一下使用Git是如何解決沖突的,有興趣的可以參考這篇文章《SVN教程之如何在Eclipse下使用SVN解決代碼沖突》看看SVN下是如何解決沖突的。
二、步驟
①工程右鍵 ->Team ->Synchronize Workspace

②從遠程pull至本地,就會出現如下內容:

大家應該注意到,有一個文件是有沖突的。那我們要怎么解決這個問題呢?
③既然有沖突,那么就開始合並沖突。合並沖突前,先要把代碼提交到git的本地倉庫。現在在同步視圖這里右鍵項目然后選擇Commit,如下圖:

然后會跳到代碼提交視圖,如下圖,

點擊Commit按鈕,注意:是Commmit按鈕,而不是Commit and Push。
④把代碼Commit到本地倉庫之后,我們就可以把遠程的代碼pull下來並且合並,如下圖:

EGit把遠程代碼pull下來的同時會把代碼同時merge了,點擊一下有沖突的文件,會在右邊的對比視圖看到如下面視圖:

現在我們要做的就是把已經合並了的文件修正過來
⑤把合並的代碼都修正過來之后,在在項目對比視圖右鍵項目然后選擇Add to Index,這個步驟非常重要,如下圖:

然后項目對比視圖會變成如下:

注意:這個時候,沖突的文件前沖突的符號下就多了個星星
⑥到現在合並就已經完成,可以把代碼提交到遠程倉庫了。右鍵項目選擇Commit然后在下面視圖中點擊Commit and Push

注意:這里是Commit and Push,提交到遠程倉庫。
再去遠程倉庫查看一下代碼是否提交

紅線部分是本地剛提交上去的代碼,提交成功。
⑦還有一種方式,就是先將自己本地跟服務器上有沖突的文件先備份一下,取一個別名比如EmpMapper.java.bak,然后再將EmpMapper.java代碼從服務器上pull下來,這時候再將EmpMapper.java.bak中修改過的地方添加到新pull下來的文件中就可以了。這種也不失為一個很好的操作方式。
