衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何為GitHub這些項目貢獻代碼呢?

5RJg_mcuworld ? 來源:未知 ? 作者:李倩 ? 2018-10-29 16:12 ? 次閱讀

碼農(nóng)朋友們都知道,GitHub是一個面向開源及私有軟件項目的托管平臺,上面托管了眾多的優(yōu)秀的項目,比如Linux內(nèi)核源碼、Git源碼、機器學習框架Tensorflow等等。當然,除了這些頂尖項目外,還有海量的高手開發(fā)的優(yōu)秀項目。所有的這些項目,我們都可以為它貢獻代碼。

那么,要如何為這些項目貢獻代碼呢?我們下面以實例來講解。

比如說,現(xiàn)在GitHub上有個很牛逼的項目githubTest,它的作者是Alvin,項目地址如下:https://github.com/yychuyu/githubTest。

現(xiàn)在Harry看到了這個項目,想要對它進行貢獻代碼。想要達到這個目的,Harry要完成下圖的這些步驟:

1. fork

Harry在找到這個項目之后,點擊右上角的「fork」按鈕。稍等片刻后,就會在Harry的賬號下克隆了一個一樣的項目githubTest,包括文件、提交歷史、issues、和其余一些東西。

2. clone

通過fork之后,Harry的賬號下也有了githubTest這個項目,但還不能對它進行編譯、修改(其實是可以修改,但是不建議)。

這時,可以通過git clone命令,將這個項目clone到自己的電腦里。

3. update a file & 4. commit

接下來,Harry就可以大顯身手了,可以自由對這個項目進行修改。

但是,不建議在master分支直接修改,建議在master分支基礎(chǔ)上切出一個dev分支,然后在dev分支上自由發(fā)揮。修改完之后,再將dev分支merge到master分支。

5. push

在自己的電腦上修改好代碼之后,再使用git push命令將改動同步到自己的GitHub項目倉庫里。

通過這個操作后,就可以在代碼倉庫里看到自己的提交了。

6. pull request

接下來,就是向原作者Alvin提交你的代碼了。首先點擊文件列表上的「New pull request」。

之后,GitHub會自動對源倉庫分支及自己倉庫分支代碼進行比對,看看是否有沖突。如果它顯示「Able to merge」的話,Harry就可以點擊下面的「Create pull request」綠色按鈕,進行代碼提交。

再之后,系統(tǒng)會要求你寫一段注釋,其實也可不寫。但最好寫一下,跟作者說明一下你改動了什么,為什么這么改。

通過以上6步,原作者Alvin就會收到一個pull request,如下圖:

然后,Alvin可以點進去,看看Harry具體提交了一些什么修改。如果他覺得這個修改確實夠niubility的話,它就可以點擊「merge pull request」,將Harry的提交集成到自己的項目里。

至此,功德圓滿,Harry順利完成一次對項目githubTest的代碼貢獻。

但是,這個項目實在太出眾了,很多高手看到了并貢獻了眾多代碼。比如現(xiàn)在Alvin自己提交了一個文件:

現(xiàn)在原作者項目已經(jīng)發(fā)生了改變,那Harry賬號下的githubTest如何與原作者Alvin的項目保持同步呢?Harry需要做以下三步操作:

1. fetch

現(xiàn)在代碼不同步了,我們要先把Alvin倉庫的代碼fetch到自己電腦的倉庫下。注意,這是在自己電腦上操作,不是在GitHub上操作。

gitfetchgit@github.com:yychuyu/githubTest.gitmaster:latest

上面這條命令,git fetch 之后的那部分,是原作者Alvin項目git地址,通過點擊原項目「clone or download」按鈕可以看到。再之后master:latest這部分,master是原項目分支,latest是自己項目分支。

如果latest分支不存在的話,將自動創(chuàng)建。其實也可以將代碼fetch到自己的master分支,但也不建議這么做。

2. merge

代碼fetch到latest分支之后,再切到master分支,再使用git merge命令將最新代碼合并到master分支。

3. push

現(xiàn)在,Harry電腦上的代碼與原項目代碼保持同步了。我們再使用git push命令,就可以將最新代碼推到Harry賬號下githubTest項目里。

以上的三個步驟具體操作過程如下圖示:

接下來,Harry就可以在此基礎(chǔ)上,繼續(xù)貢獻自己的代碼了。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 機器學習
    +關(guān)注

    關(guān)注

    66

    文章

    8441

    瀏覽量

    133091
  • GitHub
    +關(guān)注

    關(guān)注

    3

    文章

    473

    瀏覽量

    16565

原文標題:如何在 GitHub 上大顯身手?

文章出處:【微信號:mcuworld,微信公眾號:嵌入式資訊精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    教你如何快速在Github上為RT-Thread貢獻代碼

    我們真誠地感謝您的貢獻,歡迎通過 GitHub 的 fork 和 pull request 流程來提交代碼(文末有1024節(jié)福利)。
    的頭像 發(fā)表于 10-26 06:17 ?7378次閱讀
    教你如何快速在<b class='flag-5'>Github</b>上為RT-Thread<b class='flag-5'>貢獻</b><b class='flag-5'>代碼</b>

    上傳本地項目代碼github

    概述 GitHub是一個面向開源及私有軟件項目的托管平臺,因為只支持git 作為唯一的版本庫格式進行托管,故名GitHub。本文主要講解如何將本地代碼上傳至
    發(fā)表于 09-11 16:33

    Github發(fā)布史上最大更新

    看好Github以后的走向,出了很多調(diào)侃。比方說充值會員才能搜索下載項目,但是從這幾個月的風聲來看其實一切都發(fā)展的還不錯。就在上個月的時候Github剛做過一個更新,他們改版并放棄了jQuery,這可
    發(fā)表于 10-17 10:03

    【直播回顧】戰(zhàn)碼先鋒第七期:三方應用開發(fā)者如何為開源做貢獻

    6月23日晚上19點,戰(zhàn)"碼"先鋒第7期直播 《三方應用開發(fā)者如何為開源做貢獻》 ,在OpenHarmony社群內(nèi)成功舉行。本期課程,由華為開發(fā)者聯(lián)盟年度牛人,知名up主九弓子
    發(fā)表于 06-24 11:23

    來自GitHub的安全威脅應該如何應對

    GitHub是超級流行的源代碼管理平臺,公司和個人都在用GitHub存儲和管理源代碼,保持軟件開發(fā)項目平穩(wěn)進行。
    發(fā)表于 05-14 08:18 ?1161次閱讀

    github是什么_github有什么用

    gitHub是一個面向開源及私有軟件項目的托管平臺,因為只支持git 作為唯一的版本庫格式進行托管,故名gitHubgitHub于2008年4月10日正式上線,除了git
    發(fā)表于 11-29 16:19 ?2.1w次閱讀

    github入門到上傳本地項目步驟

    GitHub可以托管各種git庫,并提供一個web界面,但與其它像 SourceForge或Google Code這樣的服務(wù)不同,GitHub的獨特賣點在于從另外一個項目進行分支的簡易性。為一個
    發(fā)表于 11-29 16:51 ?2240次閱讀

    github使用教程_github菜鳥教程

    GitHub 擁有一個非常鼓勵合作的社區(qū)氛圍。這一方面源于 GitHub 的付費模式:私有項目需要付費,而公共項目完全免費。這意味著 GitHub
    發(fā)表于 11-29 17:22 ?1.5w次閱讀
    <b class='flag-5'>github</b>使用教程_<b class='flag-5'>github</b>菜鳥教程

    2018 年 2 月份 GitHub 上最熱門的開源項目

    2 月份 GitHub 上最熱門的開源項目又出爐了,又有哪些新的項目擠進熱門榜單了,一起來看看。
    的頭像 發(fā)表于 03-23 08:53 ?4709次閱讀

    如何從GitHub存儲庫下載代碼

    Github下載代碼的最簡單方法是通過點擊“ 下載Zip 下載整個zip文件中的代碼
    的頭像 發(fā)表于 09-24 09:11 ?9344次閱讀
    如何從<b class='flag-5'>GitHub</b>存儲庫下載<b class='flag-5'>代碼</b>

    微軟北極代碼項目,GitHub代碼可存儲500年

    繼成功研制玻璃存儲器后,微軟的憂患意識又轉(zhuǎn)移到了旗下的GitHub中,在本周在舊金山舉辦的GitHub Universe大會上,雷德蒙德巨頭宣布推出北極代碼項目
    的頭像 發(fā)表于 11-15 10:06 ?2673次閱讀

    GitHub無故封禁開源項目引網(wǎng)友不滿 都是開源代碼受管制惹的禍?

    近日,微軟的開源項目 JavaScript 框架 Aurelia 不小心被 GitHub 封禁了,理由是項目中有兩名來自伊朗的外部貢獻者。雖然 Gi
    的頭像 發(fā)表于 03-24 08:57 ?4001次閱讀

    如何對OpenHarmony貢獻代碼

    互聯(lián)產(chǎn)業(yè)的繁榮發(fā)展。 目前代碼倉托管在 gitee 上,官方地址: https://gitee.com/openharmony 下面主要來講講如何對 OpenHarmony 貢獻代碼。 fork
    的頭像 發(fā)表于 09-28 09:58 ?1450次閱讀
    如何對OpenHarmony<b class='flag-5'>貢獻</b><b class='flag-5'>代碼</b>

    上傳本地項目代碼github

    GitHub是一個面向開源及私有軟件項目的托管平臺,因為只支持git 作為唯一的版本庫格式進行托管,故名GitHub。本文主要講解如何將本地代碼上傳至
    的頭像 發(fā)表于 11-14 16:45 ?1108次閱讀
    上傳本地<b class='flag-5'>項目</b><b class='flag-5'>代碼</b>到<b class='flag-5'>github</b>

    如何使用Github高效率的查找項目

    GitHub各位應該都很熟悉了,全球最大的開源社區(qū),也是全球最大的同性交友網(wǎng)站~~,但是大部分同學使用GitHub應該就是通過別人的開源鏈接,點進去下載對應的項目,而真正使用Github
    的頭像 發(fā)表于 09-24 14:43 ?745次閱讀
    如何使用<b class='flag-5'>Github</b>高效率的查找<b class='flag-5'>項目</b>
    五张百家乐官网的玩法技巧和规则| 新澳博百家乐官网现金网| 做生意风水门面要求| 崇礼县| 大发888存款| 百家乐长庄投注| 安福县| 大发888注册送58元| 百家乐赌场代理合作| 任你博百家乐官网的玩法技巧和规则 | 百家乐网上投注文章| 百家乐官网五湖四海赌场娱乐网规则 | 视频百家乐赌法| 百家乐官网博彩的玩法技巧和规则 | 百家乐法则| 百家乐视频双扣下载| 蓝盾百家乐官网赌场娱乐网规则| 百家乐官网单机游戏下| 杨公24山向水法吉凶断| 文登市| 赌博中百家乐什么意思| 娱乐城百家乐官网的玩法技巧和规则| 百家乐官网博彩软件| 188比分直播网| 大发888 大发888官网| 反赌百家乐的玩法技巧和规则 | 临邑县| 娱乐城开户送体验金| 大发888真人新浪微群| 百家乐游戏什么时间容易出对| 金博士百家乐娱乐城 | 百家乐官网斗地主炸金花| 百家乐官网注册开户送现金| 百家乐官网最低下注| 网络赌场| 克拉克娱乐城| 皇冠投注| 博彩e族天上人间| 金塔县| 百家乐官网游戏试玩免费| 哪个百家乐官网网站最大|