1. 程式人生 > >Git教程之一個團隊如何在github上協作開發

Git教程之一個團隊如何在github上協作開發

前面我記錄瞭如何上傳自己的專案到個人github賬戶上,當團隊協作的時候,該如何運用git來進行版本控制呢?

這次我以Gpwner上的recyclerview這個專案來舉例
這裡寫圖片描述
2.點選專案的setting->Collaborators,輸入團隊成員的Github賬戶
這裡寫圖片描述
然後就是坐等團隊成員同意,這裡假設Gpwner是專案的Leader,DiKeYuTa是成員。
3.在團隊成員的PC上登入其賬戶,在這裡是登入DiKeYuTa繫結的郵箱
這裡寫圖片描述
可以看到DiKeYuTa繫結的郵箱已經收到了來自Gpwner的邀請了,點選
View invitation,然後會跳轉到以下介面
這裡寫圖片描述


點選accept invitation就可以了
4.現在Leader登入自己的賬號就可以看到,團隊成員已經成功新增到該專案的協作人員了
這裡寫圖片描述
5.DiKeYuTa在自己的PC上clone下來該專案
我使用的是Git([Git安裝教程,點選進入]http://blog.csdn.net/gpwner/article/details/52829187

************************************************************************

如果沒有配置好SSH key的,先配置以下,步驟如下:

  • 在PC任意地方右鍵,選擇
git bash here 

然後輸入:

ssh-keygen -t rsa -C "[email protected]"
//[email protected]是你的在github註冊時候使用的時候的郵箱

然後一路回車,知道看到提示所建立的SSHkey路徑,就說明你的SSH已經建立成功了
這裡寫圖片描述

我SSHkey是在:C:\Users\Gpwner.ssh
進入該目錄開啟id_rsa.pub,打不開的選擇開啟方式為記事本 複製好裡面的內容

這裡寫圖片描述
這裡寫圖片描述

然後在https://github.com登入DiKeYuTa賬號,進入個人賬號下的setting->SSH and GPG KEY->New SSH KEY,輸入標題和剛才複製好的ssh key,最好點選add SSH key
這裡寫圖片描述

回到git bash
輸入以下指令驗證是否配置成功:

ssh -T git@github.com

如下圖說明你的ssh已經配置成功了
這裡寫圖片描述

************************************************************************

進入Leader的專案下複製好git遠端地址。

在PC 的任意位置滑鼠右鍵,選擇git bash here
這裡寫圖片描述

然後輸入git clone [email protected]:Gpwner/Recyclerview.git,靜等clone完畢就好了
這裡寫圖片描述
6.經過以上步驟,所有的準備工作已經完成了接下來就是更新你的程式碼到github上的遠端倉庫了,這裡以我在clone下來的專案裡面新添加了一個txt檔案舉例,
這裡寫圖片描述
我在clone下專案的目錄下,新建了一個2016年11月12日130728.txt檔案 ,然後回到git bash 中
每次提交新的程式碼,都要先同步遠端倉庫,看看有沒有其他人有更新,否則自己的程式碼將無法提交上去
輸入:

git pull
git add .
git commit -m "bbb"
git push

如果你不同步直接提交話有可能會報以下錯誤:

 ! [rejected]        master -> master (fetch first)
error: failed to push some refs to '[email protected]:Gpwner/Recyclerview.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

回到Leader的賬號,可以看到DiKeYuTa剛才提交的東西已經同步到了該遠端倉庫
這裡寫圖片描述