<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 牛人業(yè)話(huà) > 從0開(kāi)始學(xué)習 GitHub 系列之「07.GitHub 常見(jiàn)的幾種操作」

從0開(kāi)始學(xué)習 GitHub 系列之「07.GitHub 常見(jiàn)的幾種操作」

作者: 時(shí)間:2017-05-12 來(lái)源:網(wǎng)絡(luò ) 收藏

  之前寫(xiě)了一個(gè) GitHub 系列,反響很不錯,突然發(fā)現竟然還落下點(diǎn)東西沒(méi)寫(xiě),前段時(shí)間 GitHub 也改版了,借此機會(huì )補充下。

本文引用地址:http://dyxdggzs.com/article/201705/359118.htm

  我們都說(shuō)開(kāi)源社區最大的魅力是人人多可以參與進(jìn)去,發(fā)揮眾人的力量,讓一個(gè)項目更完善,更強壯。那么肯定有人疑問(wèn),我自己目前還沒(méi)有能力開(kāi)源一個(gè)項目,但是想一起參與到別的開(kāi)源項目中,該怎么操作呢?那么今天,就來(lái)給大家一起介紹下 GitHub 上的一些常見(jiàn)的操作,看完之后你就知道方法了。

  我們姑且以 Square 公司開(kāi)源的 Retrofit 為例來(lái)介紹。

  打開(kāi)鏈接:

  https://github.com/square/retrofit

  然后看到如下的項目主頁(yè):

    

 

  可以看到一個(gè)項目可以進(jìn)行的操作主要就是兩部分,第一部分包括 Watch、Star、Fork ,這三個(gè)操作之前的系列介紹過(guò)了,這里就不啰嗦了。

  我們著(zhù)重來(lái)介紹第二部分,分別包括 Code、Issues、Pull requests、Projects、Wiki、Pulse、Graphs。接下來(lái)我們來(lái)一個(gè)個(gè)解釋下。

  Code

  這個(gè)好理解,就是你項目的代碼文件而已,這里說(shuō)明一下,每個(gè)項目通常都會(huì )有對該項目的介紹,只需要在項目的根目錄里添加一個(gè) README.md 文件就可以,使用 markdown 語(yǔ)法,GitHub 自動(dòng)會(huì )對該文件進(jìn)行渲染。

  Issues

  Issues 代表該項目的一些問(wèn)題或者 bug,并不是說(shuō) Issues 越少越好,Issues 被解決的越多說(shuō)明項目作者或者組織響應很積極,也說(shuō)明該開(kāi)源項目的作者很重視該項目。我們來(lái)看下 Retrofit 的 Issues 主頁(yè),截至目前 close(解決) 了 1305 個(gè) Issue,open (待解決)狀態(tài)的有 37 個(gè),這解決問(wèn)題的比例與速度值得每位開(kāi)源項目的作者學(xué)習。

    

 

  同樣的,大家在使用一些開(kāi)源項目有問(wèn)題的時(shí)候都可以提 Issue,可以通過(guò)點(diǎn)擊右上角的 New Issue 來(lái)新建 Issue,需要添加一個(gè)標題與描述就可以了,這個(gè)操作很簡(jiǎn)單。

  Pull requests

  我們都知道 GitHub 的最大魅力在于人人都可參與,比如別人開(kāi)源一個(gè)項目,我們每個(gè)人都可以一起參與開(kāi)發(fā),一起來(lái)完善,而這都通過(guò) Pull requests 來(lái)完成,簡(jiǎn)稱(chēng) PR。這個(gè)沒(méi)法在 Retrofit 演示,下面我就以我自己在 GitHub 上的一個(gè)項目 9GAG 來(lái)給大家詳細演示下怎么給一個(gè)項目發(fā)起 PR:

  提前說(shuō)明下,你必須確保你可以正常向 GitHub 提交代碼,如果不可以的話(huà),請看我之前的系列文章。

  第一步登錄你的 GitHub 賬號,然后找到你想發(fā)起 PR 的項目,這里以 9GAG 為例,點(diǎn)擊右上角的 Fork 按鈕,然后該項目就出現在了你自己賬號的 Repository 里。

  請注意,這個(gè)項目原本是屬于 GitHub 賬號 stormzhang 下的,為了演示,我自己又重新注冊了另一個(gè)賬號叫 googdev 單純?yōu)榱搜菔径谩?/p>

  Fork 之后,在賬號 googdev 下多了一個(gè) 9GAG 的項目,截圖顯示如下:

    

 

  可以看到 Fork 過(guò)來(lái)的項目標題底部會(huì )顯示一行小字:fork from stormzhang/9GAG ,除此之外,項目代碼跟原項目一模一樣,對于原項目來(lái)說(shuō),相當于別人新建了一個(gè)分支而已。

  第二步,把該項目 clone 到本地,然后修改的 bug 也好,想要新增的功能也好,總之把自己做的代碼改動(dòng)開(kāi)發(fā)完,保存好。為了方便演示,我這里只在原項目的 README.md 文件添加了一行文字:Fork from stormzhang !

  接著(zhù),把自己做的代碼改動(dòng) push 到 你自己的 GitHub 上去。

  相信看過(guò)我前面教程的同學(xué)這一步應該都會(huì ),不會(huì )的可以滾回去看前面的教程了。

  第三步,點(diǎn)擊你 Fork 過(guò)來(lái)的項目主頁(yè)的 Pull requests 頁(yè)面,

    

 

  點(diǎn)擊 New pull request 按鈕緊接著(zhù)到如下頁(yè)面:

    

 

  這個(gè)頁(yè)面自動(dòng)會(huì )比較該項目與原有項目的不同之處,最頂部聲明了是 stormzhang/9GAG 項目的 master 分支與你 fork 過(guò)來(lái)的 googdev/9GAG 項目 master 分支所做的比較。

  然后最頂部可以方便直觀(guān)的看到到底代碼中做了哪些改動(dòng),你們也看到我就是加了一句 Fork from stormzhang !

  同樣的我寫(xiě)好標題和描述,然后我們點(diǎn)擊中間的 Create pull request 按鈕,至此我們就成功給該項目提交了一個(gè) PR。

  然后就等著(zhù)項目原作者 review 你的代碼,并且決定會(huì )不會(huì )接受你的 PR,如果接受,那么恭喜你,你已經(jīng)是該項目的貢獻者之一了。

  Projects

  這個(gè)是最新 GitHub 改版新增的一個(gè)項目,這個(gè)項目就是方便你把一些 Issues、Pull requests 進(jìn)行分類(lèi),反正我覺(jué)得該功能很雞肋,起碼到目前為止基本沒(méi)人用該功能,你們了解下就好。

  Wiki

  一般來(lái)說(shuō),我們項目的主頁(yè)有 README.me 基本就夠了,但是有些時(shí)候我們項目的一些用法很復雜,需要有詳細的使用說(shuō)明文檔給開(kāi)源項目的使用者,這個(gè)時(shí)候就用到了 Wiki。

    

 

  使用起來(lái)也很簡(jiǎn)單,直接 New Page ,然后使用 markdown 語(yǔ)法即可進(jìn)行編寫(xiě)。

  Pulse

  Pulse 可以理解成該項目的活躍匯總。包括近期該倉庫創(chuàng )建了多少個(gè) Pull Request 或 Issue,有多少人參與了這個(gè)倉庫的開(kāi)發(fā)等,都可以在這里一目了然。

  根據這個(gè)頁(yè)面,用戶(hù)可以判斷該項目受關(guān)注程度以及項目作者是否還在積極參與解決這些問(wèn)題等。

    

 

  Graphs

  Graphs 是以圖表的形式來(lái)展示該項目的一個(gè)整體情況。比如項目的全部貢獻人,比如 commits 的圍度分析,比如某天代碼提交的頻繁程度等。

    

 

  Settings

  如果一個(gè)項目是自己的,那么你會(huì )發(fā)現會(huì )多一個(gè)菜單 Settings,這里包括了你對整個(gè)項目的設置信息,比如對項目重命名,比如刪除該項目,比如關(guān)閉項目的 Wiki 和 Issues 功能等,不過(guò)大部分情況下我們都不需要對這些設置做更改。感興趣的,可以自行看下這里的設置有哪些功能。

    

 

  以上就包含了一個(gè) GitHub 項目的所有操作,相信大家看完之后對 GitHub 上一些常用的操作都熟悉了,從現在開(kāi)始,請一起參與到開(kāi)源社區中來(lái)吧,開(kāi)源社區需要我們每個(gè)人都貢獻一份力,這樣開(kāi)源社區才能越來(lái)越強大,也才能對更多的人有幫助!



關(guān)鍵詞: GitHub

評論


首先雖然不一定能一眼看出這圖是偽造的,但是這個(gè)消息必然屬于那種一眼就能看出的Fake News。偷服務(wù)器數據這個(gè)很常見(jiàn),同樣是Github,在今年五月份就曾被黑客入侵導致超500G數據被竊取。畢竟想要盜取沒(méi)有實(shí)體的數據,一根連通的網(wǎng)線(xiàn)足以。

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>