1. 程式人生 > >git多人協作開發

git多人協作開發

多人協作的工作模式通常是這樣:

1、一天的開始 先git pull  將專案更新到本地
2、程式碼寫完之後,git push origin <branch-name>推送自己的修改
3、如果推送失敗,可能遠端分支有人提交了,需要先用git pull試圖合併;
4、如果合併有衝突,則解決衝突,並在本地提交;
5、沒有衝突或者解決掉衝突後,再用git push origin <branch-name>推送就能成功!
如果git pull提示no tracking information,則說明本地分支和遠端分支的連結關係沒有建立,用命令git branch --set-upstream-to <branch-name> origin/<branch-name>。

下面來模擬下 多人開發: 開啟兩個終端介面,進行模擬: 1、首先將master 克隆到本地 進入到相應的目錄下 都輸入 git clone https://github.com/lvhome/firstGit.git 在這裡插入圖片描述 2、檢視下分值 會發現只有master 在這裡插入圖片描述 3、主線master分支,一般不在上面操作 建立dev,dev分支是開發分支,團隊所有成員都需要在dev上面工作,所以也需要與遠端同步:建立分支並進入分支

git checkout -b dev

另一個小夥伴也切換下分支 現在,A在dev上繼續修改,然後把dev分支push到遠端: A修改了pod 然後提交 如圖

 vim pod 
 git add .
 git commit -m 'A對pod進行了修改'
 git push origin dev

在這裡插入圖片描述 然而B並不知道你修改了 ,也對pod檔案進行了修改

 vim pod 
 git add .
 git commit -m 'B對pod進行了修改'
 git push origin dev

在這裡插入圖片描述 如圖 發現報錯了 ;為什麼呢?因為A的最新提交和你試圖推送的提交有衝突,怎麼解決了,git上圖也給我們提示了,先用git pull把最新的提交從origin/dev抓下來,然後,在本地合併,解決衝突,再推送:(或者點選檢視衝突問題解決)

5、繼續 B先去 執行下 git pull origin dev 如圖

在這裡插入圖片描述 發現衝突了 ,那就解決下衝突吧! vim pod 進入檔案 發現如圖 在這裡插入圖片描述 手動解決,然後合併提交 成功

git add .
git commit -m 'B解決衝突提交'
git push origin dev

在這裡插入圖片描述

額外命令 1、git remote -v //檢視遠端庫資訊; 2、git branch --set-upstream branch-name origin/branch-name 建立本地分支和遠端分支的關聯; 3、git branch -d 刪除分支 4、git branch -D 強行刪除一個沒有被合併過的分支