版權聲明:本文爲博主皮皮http://blog.csdn.net/pipisorry原創文章,未經博主容許不得轉載。html
http://blog.csdn.net/pipisorry/article/details/45532883github
本文是關於如何建立一個github項目,讓多人團隊共同開發一個項目。bootstrap
首先在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/
這樣的地址。實際上,Git支持多種協議,默認的workspace
.gitgit://
使用ssh,但也可使用https
等其餘協議。
使用https
除了速度慢之外,還有個最大的麻煩是每次推送都必須輸入口令,可是在某些只開放http端口的公司內部就沒法使用ssh
協議而只能用https
。
3. clone下來的是一個目錄,因此clone時的當前目錄能夠是根目錄
4. colon的項目能夠是別人github上的項目,不須要受權、密碼等
皮皮Blog
在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