以前寫了一個 GitHub 系列,反響很是不錯,忽然發現竟然還落下點東西沒寫,前段時間 GitHub 也改版了,藉此機會補充下。git
咱們都說開源社區最大的魅力是人人多可以參與進去,發揮衆人的力量,讓一個項目更無缺。更強壯。那麼確定有人疑問,我本身眼下尚未能力開源一個項目,但是想一塊兒參與到別的開源項目中。該怎麼操做呢?那麼今天,就來給你們一塊兒介紹下 GitHub 上的一些常見的操做,看完以後你就知道方法了。github
咱們姑且以 Square 公司開源的 Retrofit 爲例來介紹。微信
打開連接:markdown
https://github.com/square/retrofitpost
而後看到例如如下的項目主頁:學習
可以看到一個項目可以進行的操做主要就是兩部分,第一部分包含 Watch、Star、Fork ,這三個操做以前的系列介紹過了。這裏就不囉嗦了。orm
咱們着重來介紹第二部分,分別包含 Code、Issues、Pull requests、Projects、Wiki、Pulse、Graphs。接下來咱們來一個個解釋下。教程
這個好理解,就是你項目的代碼文件而已,這裏說明一下。每個項目一般都會有對該項目的介紹。僅僅需要在項目的根文件夾里加入一個 README.md 文件就可以。使用 markdown 語法。GitHub 本身主動會對該文件進行渲染。開發
Issues 表明該項目的一些問題或者 bug,並不是說 Issues 越少越好,Issues 被解決的越多說明項目做者或者組織響應很是積極。也說明該開源項目的做者很是重視該項目。文檔
咱們來看下 Retrofit 的 Issues 主頁,截至眼下 close(解決) 了 1305 個 Issue。open (待解決)狀態的有 37 個,這解決這個問題的比例與速度值得每位開源項目的做者學習。
相同的,你們在使用一些開源項目有問題的時候都可以提 Issue。可以經過點擊右上角的 New Issue 來新建 Issue,需要加入一個標題與描寫敘述就可以了,這個操做很是easy。
咱們都知道 GitHub 的最大魅力在於人人均可參與,比方別人開源一個項目,咱們每個人都可以一塊兒參與開發,一塊兒來無缺。而這都經過 Pull requests 來完畢,簡稱 PR。這個無法在 Retrofit 演示,如下我就以我本身在 GitHub 上的一個項目 9GAG 來給你們具體演示下怎麼給一個項目發起 PR:
提早說明下。你必須確保你可以正常向 GitHub 提交代碼,假設不可以的話。請看我以前的系列文章。
第一步登陸你的 GitHub 帳號,而後找到你想發起 PR 的項目,這裏以 9GAG 爲例。點擊右上角的 Fork button,而後該項目就出現在了你本身帳號的 Repository 裏。
請注意。這個項目本來是屬於 GitHub 帳號 stormzhang 下的,爲了演示,我本身又又一次註冊了還有一個帳號叫 googdev 單純爲了演示而用。
Fork 以後。在帳號 googdev 下多了一個 9GAG 的項目,截圖顯演示樣例如如下:
可以看到 Fork 過來的項目標題底部會顯示一行小字:fork from stormzhang/9GAG 。除此以外,項目代碼跟原項目如出一轍。對於原項目來講。至關於別人新建了一個分支而已。
第二步。把該項目 clone 到本地,而後修改的 bug 也好。想要新增的功能也好,總之把本身作的代碼修改開發完,保存好。
爲了方便演示,我這裏僅僅在原項目的 README.md 文件加入了一行文字:Fork from stormzhang !
接着,把本身作的代碼修改 push 到 你本身的 GitHub 上去。
相信看過我前面教程的同窗這一步應該都會。不會的可以滾回去看前面的教程了。
第三步,點擊你 Fork 過來的項目主頁的 Pull requests 頁面,
點擊 New pull request button緊接着到例如如下頁面:
這個頁面本身主動會比較該項目與原有項目的不一樣之處。最頂部聲明瞭是 stormzhang/9GAG 項目的 master 分支與你 fork 過來的 googdev/9GAG 項目 master 分支所作的比較。
而後最頂部可以方便直觀的看到究竟代碼中作了哪些修改,大家也看到我就是加了一句 Fork from stormzhang !
相同的我寫好標題和描寫敘述。而後咱們點擊中間的 Create pull request button,至此咱們就成功給該項目提交了一個 PR。
而後就等着項目原做者 review 你的代碼。並且決定會不會接受你的 PR,假設接受,那麼恭喜你。你已是該項目的貢獻者之中的一個了。
這個是最新 GitHub 改版新增的一個項目。這個項目就是方便你把一些 Issues、Pull requests 進行分類。反正我認爲該功能很是雞肋,起碼到眼下爲止基本沒人用該功能。大家瞭解下就好。
通常來講,咱們項目的主頁有 README.me 基本就夠了,但是有些時候咱們項目的一些使用方法很是複雜。需要有具體的使用說明文檔給開源項目的使用者。這個時候就用到了 Wiki。
使用起來也很是easy,直接 New Page ,而後使用 markdown 語法就能夠進行編寫。
Pulse 可以理解成該項目的活躍彙總。包含最近該倉庫建立了多少個 Pull Request 或 Issue,有多少人參與了這個倉庫的開發等,都可以在這裏一目瞭然。
依據這個頁面。用戶可以推斷該項目受關注程度以及項目做者是否還在積極參與解決這些問題等。
Graphs 是以圖表的形式來展現該項目的一個整體狀況。比方項目的全部貢獻人,比方 commits 的圍度分析,比方某天代碼提交的頻繁程度等。
假設一個項目是本身的。那麼你會發現會多一個菜單 Settings,這裏包含了你對整個項目的設置信息,比方對項目重命名。比方刪除該項目,比方關閉項目的 Wiki 和 Issues 功能等,只是大部分狀況下咱們都不需要對這些設置作更改。感興趣的,可以自行看下這裏的設置有哪些功能。
以上就包含了一個 GitHub 項目的全部操做,相信你們看完以後對 GitHub 上一些常用的操做都熟悉了,從現在開始,請一塊兒參與到開源社區中來吧,開源社區需要咱們每個人都貢獻一份力,這樣開源社區才幹愈來愈強大,也才幹對不少其它的人有幫助!
從0開始學習 GitHub 系列之「向GitHub 提交代碼」
從0開始學習 GitHub 系列之「團隊合做利器 BRANCH」
從0開始學習 GitHub 系列之「怎樣發現優秀的開源項目?」
本文原創公佈於微信公衆號 AndroidDeveloper ,轉載請務必註明出處!