Git版本控制:Github的使用之 多人協做及參與項目

 
 

http://blog.csdn.net/pipisorry/article/details/45532883github

本文是關於如何建立一個github項目,讓多人團隊共同開發一個項目。bootstrap

Git多人協做

首先在github上建立一個repository項目,固然根據[Git版本控制教程 - Git遠程倉庫]本身能夠隨便將本地修改push到github上。框架

對於其它合做者,只要將其加入到項目合做者中來就能夠了:打開repository,點擊settings,選擇collaborators,在搜索框中搜索合做者帳號,而後add,這樣項目合做者就能夠push代碼到項目中來了。ssh

多人協做項目中的分支設置參考[Git分支處理]和[github 多人協做]。this

這樣以後就能夠不用下面介紹的fork+pull request的方式了,省了項目主管的確認這一步。spa

 

 

 

從遠程庫克隆

 

 

先建立遠程庫(或者使用別人已有的遠程庫),而後從遠程庫克隆.net

 

登錄GitHub > 建立一個新的倉庫,名字***_workspace >Initialize this repository with a README可選可不選,選的話GitHub會自動爲咱們建立一個README.md文件,建立完畢後,能夠看到README.md文件:版本控制

遠程庫已經準備好了,用命令Git clone克隆一個本地庫:

$ git clone git@github.com:pplove/***_workspace.git Cloning into '***'...
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (3/3), done.
$ cd ***
$ ls
README.md
若是有多我的協做開發,那麼每一個人各自從遠程克隆一份就能夠了。

Note:

1. git clone默認會把遠程倉庫整個給clone下來,但只會在本地默認建立一個master分支,若是遠程還有其餘的分支,此時用git branch -a查看全部分支

2. GitHub給出的地址不止一個,還能夠用https://github.com/pplove/workspace.git這樣的地址。實際上,Git支持多種協議,默認的git://使用ssh,但也可使用https等其餘協議。

使用https除了速度慢之外,還有個最大的麻煩是每次推送都必須輸入口令,可是在某些只開放http端口的公司內部就沒法使用ssh協議而只能用https

3. clone下來的是一個目錄,因此clone時的當前目錄能夠是根目錄

4. colon的項目能夠是別人github上的項目,不須要受權、密碼等

[Git clone遠程分支]

皮皮Blog

 

 

使用GitHub參與開源項目-fork + pull request

咱們一直用GitHub做爲免費的遠程倉庫,若是是我的的開源項目,放到GitHub上是徹底沒有問題的。其實GitHub仍是一個開源協做社區,經過GitHub,既可讓別人參與你的開源項目,也能夠參與別人的開源項目。

 

在GitHub出現之前,開源項目開源容易,但讓廣大人民羣衆參與進來比較困難,由於要參與,就要提交代碼,而給每一個想提交代碼的羣衆都開一個帳號那是不現實的,所以,羣衆也僅限於報個bug,即便能改掉bug,也只能把diff文件用郵件發過去,很不方便。

可是在GitHub上,利用Git極其強大的克隆和分支功能,人們羣衆真正能夠第一次自由參與各類開源項目了。

如何參與一個開源項目?

好比人氣極高的bootstrap項目,這是一個很是強大的CSS框架,你能夠訪問它的項目主頁https://github.com/twbs/bootstrap,點「Fork」就在本身的帳號下克隆了一個bootstrap倉庫,而後,從本身的帳號下clone:

git clone git@github.com:pplove/bootstrap.git

必定要從本身的帳號下clone倉庫,這樣你才能推送修改。若是從bootstrap的做者的倉庫地址git@github.com:twbs/bootstrap.git克隆,由於沒有權限,你將不能推送修改。

Bootstrap的官方倉庫twbs/bootstrap、你在GitHub上克隆的倉庫my/bootstrap,以及你本身克隆到本地電腦的倉庫的關係圖:

若是你想修復bootstrap的一個bug,或者新增一個功能,馬上就能夠開始幹活,幹完後,往本身的倉庫推送。

若是你但願bootstrap的官方庫能接受你的修改,你就能夠在GitHub上發起一個pull request。固然,對方是否接受你的pull request就不必定了。

fork一個項目後如何刪除?

點擊選擇fork的項目 > 進入後點擊Settings標誌 > 點擊Delete this repository > 確認要刪除的repository名字,選擇」I understand the consequences,delete this repository」

github的pull request
有一個倉庫,叫Repo A。你若是要往裏貢獻代碼,首先要Fork這個Repo,因而在你的Github帳號下有了一個Repo A2,。而後你在這個A2下工做,Commit,push等。而後你但願原始倉庫Repo A合併你的工做,你能夠在Github上發起一個Pull Request,意思是請求Repo A的全部者從你的A2合併分支。若是被審覈經過並正式合併,這樣你就爲項目A作貢獻了。

如上圖,pull request的時候,注意base fork(你的)和base分支,以及要別人接受的那我的的head fork和compare分支。

 

 

關注別人的項目

 

(變化或者說是收藏)

進入別人的項目 

將上圖中的unwatch改成watch

這樣在本身的github上就能夠經過進入看到本身關注的項目

from:http://blog.csdn.net/pipisorry/article/details/45532883

Git相關問題及錯誤總結

相關文章
相關標籤/搜索