八:多人協作。
當你從遠端庫轉殖時候,實際上git自動把本地的master分支和遠端的master分支對應起來了,並且遠端庫的預設名稱是origin。
要檢視遠端庫的資訊
使用 git remote
要檢視遠端庫的詳細資訊
使用 git remote –v
如下演示:
一:推送分支:
推送分支就是把該分支上所有本地提交到遠端庫中,推送時,要指定本地分支,這樣,git就會把該分支推送到遠端庫對應的遠端分支上:
使用命令 git push origin master
比如我現在的github上的readme.txt**如下:
本地的readme.txt**如下:
現在我想把本地更新的readme.txt**推送到遠端庫中,使用命令如下:
我們可以看到如上,推送成功,我們可以繼續來截圖github上的readme.txt內容 如下:
可以看到
推送成功了,如果我們現在要推送到其他分支,比如dev分支上,我們還是那個命令 git push origin dev
那麼一般情況下,那些分支要推送呢?
1 master分支是主分支,因此要時刻與遠端同步。
2 一些修復bug分支不需要推送到遠端去,可以先合併到主分支上,然後把主分支master推送到遠端去。
二:抓取分支:
多人協作時,大家都會往master分支上推送各自的修改。現在我們可以模擬另外乙個同事,可以在另一台電腦上(注意要把ssh key新增到github上)或者同一臺電腦上另外乙個目錄轉殖,新建乙個目錄名字叫testgit2
但是我首先要把dev分支也要推送到遠端去,如下
接著進入testgit2目錄,進行轉殖遠端的庫到本地來,如下:
現在目錄下生成有如下所示:
現在我們的小夥伴要在dev分支上做開發,就必須把遠端的origin的dev分支到本地來,於是可以使用命令建立本地dev分支:git checkout –b dev origin/dev
現在小夥伴們就可以在dev分支上做開發了,開發完成後把dev分支推送到遠端庫時。
如下:
小夥伴們已經向origin/dev分支上推送了提交,而我在我的目錄檔案下也對同樣的檔案同個地方作了修改,也試圖推送到遠端庫時,如下:
由上面可知:推送失敗,因為我的小夥伴最新提交的和我試圖推送的有衝突,解決的辦法也很簡單,上面已經提示我們,先用git pull把最新的提交從origin/dev抓下來,然後在本地合併,解決衝突,再推送。
這回git pull
成功,但是合併有衝突,需要手動解決,解決的方法和分支管理中的
解決衝突完全一樣。解決後,提交,再push:
我們可以先來看看readme.txt內容了。
現在手動已經解決完了,我接在需要再提交,再push到遠端庫裡面去。如下所示:
因此:多人協作工作模式一般是這樣的:
首先,可以試圖用git push origin branch-name推送自己的修改.
如果推送失敗,則因為遠端分支比你的本地更新早,需要先用git pull試圖合併。
如果合併有衝突,則需要解決衝突,並在本地提交。再用git push origin branch-name推送。
git基本常用命令如下:
mkdir: xx (建立乙個空目錄 xx指目錄名)
pwd: 顯示當前目錄的路徑。
git init 把當前的目錄變成可以管理的git倉庫,生成隱藏.git檔案。
git add xx 把xx檔案新增到暫存區去。
git commit –m 「xx」 提交檔案 –m 後面的是注釋。
git status 檢視倉庫狀態
git diff xx 檢視xx檔案修改了那些內容
git log 檢視歷史記錄
git reset –hard head^ 或者 git reset –hard head~ 回退到上乙個版本
(如果想回退到100個版本,使用git reset –hard head~100 )
cat xx 檢視xx檔案內容
git reflog 檢視歷史記錄的版本號id
git checkout — xx 把xx檔案在工作區的修改全部撤銷。
git rm xx 刪除xx檔案
git remote add origin
關聯乙個遠端庫
git push –u(第一次要用-u 以後不需要) origin master 把當前master分支推送到遠端庫
git clone
從遠端庫中轉殖
git checkout –b dev 建立dev分支 並切換到dev分支上
git branch 檢視當前所有的分支
git checkout master 切換回master分支
git merge dev 在當前的分支上合併dev分支
git branch –d dev 刪除dev分支
git branch name 建立分支
git stash 把當前的工作隱藏起來 等以後恢復現場後繼續工作
git stash list 檢視所有被隱藏的檔案列表
git stash drop 刪除檔案
git stash pop 恢復檔案的同時 也刪除檔案
git remote 檢視遠端庫的資訊
git remote –v 檢視遠端庫的詳細資訊
git push origin master git會把master分支推送到遠端庫對應的遠端分支上
使用git 高效多人合作
複習一下.首先 團隊中每個成員都要有乙個git賬號 由團隊的組長在git上新建立乙個工程 git上自動生成乙個master分支 再由組長建立多個分支 有幾個成員 建立幾個 包括自己 建立的這些分支成為每個成員的遠端分支 稍等 再另外建立乙個分支 叫什麼都可以 我們叫dev 由組長把專案上傳到git ...
Git 筆記 多人合作 流程
1.第一次建立 repo 在github上開repo 2.開始分工 分工方式 1.pull 每天開工就記得先git pull,更新本機的code 2.coding 開發新功能git branch branch name git checkout branch name 養成好習慣,修改乙個功能就記得...
正確使用git參與多人合作專案
最近一直在github上參與乙個名為wuhan2020的開源專案,其中各個contributor是通過git flow實現多人協作開發專案的。所以在這裡記錄一下如何正確使用git參與多人合作專案。訪問你要參與貢獻的倉庫a,並 fork 到自己的賬號下。回到自己的 github 主頁,並找到剛剛 fo...