1. 程式人生 > >git版本衝突及解決方案

git版本衝突及解決方案

假設一對情侶為了寫一本戀愛日記,採用git + github方式來儲存!

男朋友:在公司把日記pull下來並且增加了“今天是2月14日,現在是6:50,我吃了一個梨,梨太難吃了”
女朋友:在公司把日記pull下來並且增加了“今天是2月14日,現在是7:10,我吃了一個梨,梨很好吃”
接著發生以下情景:女朋友吃了梨之後馬上push到github上了。而男朋友下班的時候吃了一個桃子並且在日記中增加“現在是9:40,終於下班了,我吃了一個桃子,桃子好吃”,然後push到github上。就會發生版本衝突了。。。

這裡寫圖片描述

為什麼?
因為男朋友在公司pull到本地上的是舊版本的日記,也就是沒有女朋友增加“梨好吃”的日期為2月14日的日記,所以就會出現衝突。

解決方案:

把本地倉庫的檔案更新為最新的,使用git pull

這裡寫圖片描述

然後我們輸入:git diff,此命令比較的是工作目錄(Working tree)和暫存區域快照(index)之間的差異(也就是修改之後還沒有暫存起來的變化內容)

這裡寫圖片描述

好,我們編輯一下衝突的檔案:vim 日記
把那些多餘的欄位都刪除掉,然後就commit一下再push一下就可以了