拉取遠端程式碼時與原生代碼衝突的解決方案之一
一、本解決方案基於IDEA開發工具講解
①基於stash
首先,右擊專案--》git---》repository----》pull 拉取遠端專案,出現failed時,不要慌張不要悲傷,黎明的時光會到來,穩住心態,開啟滅 ‘’滅霸模式‘’。
接著我們繼續操作:右擊專案--》git---》repository----》stash changes ,將你本地的程式碼先暫存git中的臨時區域,並不會推送到遠端的server。
接著我們拉取遠端程式碼:右擊專案--》git---》repository----》pull 拉取遠端專案,這是我們消滅的“滅霸”,顯示successful,這時我們成功拉取了程式碼。
操作完上面的那步,千萬別忘了我們自己暫存的程式碼,繼續操作如下步驟:右擊專案--》git---》repository----》Unstash changes ,這時我們暫存的程式碼就會恢復,將衝突的部分以你的程式碼為主。這時候,我們的衝突解決了。
②基於commit,但不推送方式 (個人實踐)
A、首先,先拉取程式碼,發現跟原生代碼衝突。右擊專案--》git---》commit directory,點選 commit,將你原生代碼儲存好,這裡不需要push.
B、原生代碼commit後,右擊專案--》git---》repository----》pull 拉取遠端專案,修改的程式碼跟遠端沒有正面衝突(非同檔案衝突
C、若是存在同文件衝突,拉取程式碼的時候會出現提示,然後點選 view 檢視,出現 遠端程式碼 程式碼合併區 原生代碼,這時候根據具體衝突,一個一個合併。
D、解決B情況後,直接右擊專案--》git---》rep ository----》push,向遠端提交程式碼。解決C情況,需要再commit,再點選push。
二、普及一下stash知識:
git stash 會把所有未提交的修改(包括暫存的和非暫存的)都儲存起來,(stash是本地的,不會通過git push
命令上傳到git server上).用於後續恢復當前工作目錄。
git 常用命令推薦:https://www.cnblogs.com/chenwolong/p/GIT.html