咱們提到的在衝突問題:linux
一個代碼你改了,我也改了而後發佈,這就會產生衝突,由於版本工具沒法識別到底哪一個是該留下來的。咱們如何解決衝突?git
要想解決衝突,咱們先製造衝突。github
首先打開兩個shell客戶端連上linux服務器進行操做,也就是咱們模擬兩我的對同一項目進行提交操做shell
咱們到當前test倉庫對文件進行操做服務器
ls #查看有什麼 cp -r Driectory-notepad Driectory-notepad1 #複製文件以及目錄 cd Driectory-notepad #進入目錄
咱們修改下日記文件,添加「番茄很酸!」保存退出工具
vi 日記
如今咱們切入到第二我的環境下,編輯文件code
添加「番茄好甜啊~」保存退出it
接下來咱們查看工做區,實際上咱們的版本工具不知道番茄是酸仍是甜,這個東西由咱們來決定。class
如今對新增文件創建一個跟蹤test
git add 日記
而後提交
git commit
在第一行填上評論如圖
發起對github上的提交
git push
剛從輸錯密碼了很差意思!
咱們看到顯示乾淨的工做區說明提交完成,開始切換第二我的
咱們發現第二我的還沒有提交
咱們再一次發起提交操做
咱們將這修改push到github上
git push
此時咱們發現了一個異常!錯誤:更新被拒絕,遠程版本庫包含不存在的提交,或推送相同的引用!
此時衝突咱們已經制造出來了,如今開始解決了
遇到上圖狀況,咱們可使用git pull合併衝突。
咱們雖然看到自動合併失敗可是同時保留了兩個文件
輸入
git status #查看工做區 git diff #打開這個衝突合併文件
因而咱們決定保留哪個
vi 日記
好!咱們進行提交
git status #查看工做區 git add 日記 #添加提交的日記 git commit #提交到本地git git push #提交到github上,由github進行維護
咱們在進入github網上進行刷新