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

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

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

教你如何快速在Github上為RT-Thread貢獻(xiàn)代碼

RTThread物聯(lián)網(wǎng)操作系統(tǒng) ? 來源:未知 ? 作者:佚名 ? 2017-10-26 06:17 ? 次閱讀

1024程序員節(jié),首先向改變世界的程序員致敬!真心祝愿天下的程序員:碼無Bug,少加班,邂逅真愛,多加薪。用技術(shù)改變世界的你們,值得更多的美好!

RT-Thread作為一款自主物聯(lián)網(wǎng)操作系統(tǒng),通過開源社區(qū)的方式開發(fā),截止目前已有多達(dá)上百位程序員在Github上為RT-Thread貢獻(xiàn)代碼,當(dāng)然還有很多沒有在Github上提交代碼的貢獻(xiàn)者,真誠地感謝您們對RT-Thread付出的心血!

支持RT-Thread的粉絲們請給RT-Thread項(xiàng)目主倉點(diǎn)星星:https://github.com/RT-Thread/rt-thread,以鼓勵(lì)RT-Thread的開發(fā)者們,也希望有越來越多的RT-Thread貢獻(xiàn)者,為RT-Thread貢獻(xiàn)更多的代碼!

↓↓

如果您愿意給RT-Thread貢獻(xiàn)代碼,歡迎通過 GitHub 的 fork 和 pull request 流程來提交代碼。 代碼要求請參考rt_thread項(xiàng)目documentation目錄下coding_style_cn.txt文件(https://github.com/RT-Thread/rt-thread/blob/master/documentation/coding_style_cn.txt)。

以下教程將指導(dǎo)您如何提交代碼,以及如何提交代碼才會(huì)被RT-Thread官方認(rèn)可。。

首先解釋一下pull request這個(gè)詞,pull request的意思是推送請求,開發(fā)者發(fā)起pull request 的目的是請求倉庫維護(hù)人采用開發(fā)者提交的代碼。下面是摘自知乎 網(wǎng)友的一段解釋:

我嘗試用類比的方法來解釋一下pull reqeust。想想我們中學(xué)考試,老師改卷的場景吧。你做的試卷就像倉庫,你的試卷肯定會(huì)有很多錯(cuò)誤,就相當(dāng)于程序里的bug。老師把你的試卷拿過來,相當(dāng)于先fork。在你的卷子上做一些修改批注,相當(dāng)于git commit。最后把改好的試卷給你,相當(dāng)于發(fā)pull request,你拿到試卷重新改正錯(cuò)誤,相當(dāng)于merge。

當(dāng)你想更正別人倉庫里的錯(cuò)誤時(shí),要按照下面的流程進(jìn)行:

  1. 先 fork 別人的倉庫,相當(dāng)于拷貝一份別人的資料。因?yàn)椴荒鼙WC你的修改一定是正確的,對項(xiàng)目有利的,所以你不能直接在別人的倉庫里修改,而是要先fork到自己的git倉庫中。

  2. clone到自己的本地分支,做一些bug fix,然后發(fā)起pull request給原倉庫,讓原倉庫的管理者看到你提交的修改。

  3. 原倉庫的管理者review這個(gè)bug,如果是正確的話,就會(huì)merge到他自己的項(xiàng)目中。merge的意思就是合并,將你修改的這部分代碼合并到原來的倉庫中添加代碼或者替換掉原來的代碼。至此,整個(gè) pull request 的過程就結(jié)束了,原來倉庫中就有了你貢獻(xiàn)的代碼啦。

現(xiàn)在以rt-thread倉庫為例說明貢獻(xiàn)代碼的流程:

1. fork將rt-thread倉庫fork到自己的git倉庫中。

2. 克?。╟lone)

將rt-thread倉庫clone到自己的本地PC。

3. 創(chuàng)建本地分支如果想要在rtt項(xiàng)目上做自己的開發(fā),最好創(chuàng)建屬于自己的項(xiàng)目分支,如果是直接對rtt貢獻(xiàn)代碼,那么可以直接在master分支上進(jìn)行操作。

4. 開發(fā)

發(fā)現(xiàn)了一個(gè)小bug并進(jìn)行修改。

5. 提交(commit)向本地倉庫提交bug

6. 保持本地倉庫最新

在準(zhǔn)備發(fā)起 Pull Request 之前,需要同步原倉庫最新的代碼,記得檢查目前的項(xiàng)目是否是最新的版本。

7. Push 到遠(yuǎn)程倉庫push到開發(fā)者自己的遠(yuǎn)程倉庫中。

8. 發(fā)起并完成 Pull Request

在git倉庫中選擇自己修改了的分支,點(diǎn)擊create pull request按鈕發(fā)起pull request.

9. 提交代碼的一些約定

發(fā)起請求成功后,RT-Thread維護(hù)人就可以看到你提交的代碼。pull request如果被同意,你的代碼就會(huì)被合并到倉庫中。

關(guān)于如何有效提交補(bǔ)丁,可以考慮遵循以下的一些事項(xiàng):

  1. 自己的代碼嚴(yán)格遵守RT-Thread的代碼規(guī)范;RT-Thread是一個(gè)干凈,清晰的系統(tǒng),代碼是給人看的(機(jī)器碼才是給機(jī)器看的),所以如何寫一份清晰、整潔的代碼也是一門學(xué)問。相信能夠合并一個(gè)PR,也是對你代碼的提高;

  2. BSP的代碼,請盡量確保代碼改動(dòng)僅限制于BSP中,而不影響到其他代碼。一上來不管三七二十,大幅修改,而不考慮其他代碼(內(nèi)核、組件)的感受,被拒絕拒掉,妥妥的!

  3. 修改組件的代碼也請盡量限制于本組件以內(nèi),天馬行空會(huì)被禁空,沒商量的;

  4. 提交時(shí),更改說明的message,最好把相關(guān)的緣由寫出,并在message標(biāo)題上增加[BSP]/[組件名]等等的標(biāo)識。

  5. 提交PR后,也多看看一些反饋,這其中可能就包括維護(hù)人對代碼的review給出的整改意見,PR掛著不理會(huì)反饋,時(shí)間長了,也會(huì)被拒的。

總而言之,提交代碼,發(fā)PR,是讓RT-Thread更棒!也是讓自己的人生有不一樣的色彩!

至此,我們就完成了一次代碼貢獻(xiàn)的過程。

恭喜,你就成為一個(gè)RT-Thread 的貢獻(xiàn)者了。請繼續(xù)提交代碼!


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

    關(guān)注

    31

    文章

    1289

    瀏覽量

    40140
  • GitHub
    +關(guān)注

    關(guān)注

    3

    文章

    471

    瀏覽量

    16451

原文標(biāo)題:在Github上為RT-Thread貢獻(xiàn)代碼,為自己的人生涂色(文末有1024節(jié)福利)

文章出處:【微信號:RTThread,微信公眾號:RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    從0教你如何給RT-Thread貢獻(xiàn)代碼

    。準(zhǔn)備工作安裝 git安裝 TortoiseGit 工具,這個(gè)工具是 git 的一種圖形化界面注意安裝 git 的時(shí)候記得勾選將 git 所在目錄添加到系統(tǒng)環(huán)境變量現(xiàn)在以rt-thread倉庫例說明貢獻(xiàn)
    發(fā)表于 04-11 09:18

    如何使githubrt-thread的最新代碼編譯后的文件正常在樹莓派4啟動(dòng)

    rt-thread,如下圖所示下載githubrt-thread的最新代碼,
    發(fā)表于 04-27 12:48

    RT-Thread Smart已正式上線,源代碼可下載,采用Apache License 2.0

    官方消息,RT-Thread Smart已正式上線,目前源代碼可在Github、Gitee下載,采用Apache License 2.0。 源碼下載鏈接: https://github
    的頭像 發(fā)表于 11-26 14:49 ?2735次閱讀

    RT-ThreadSPI的細(xì)節(jié)內(nèi)容

    作為通信協(xié)議的兩大基礎(chǔ),IIC和SPI兩者的應(yīng)用都非常廣泛,一篇文章講過了RTTIIC的移植與實(shí)踐。 《一步到位!教你RT-Thread
    的頭像 發(fā)表于 09-30 15:35 ?3880次閱讀
    <b class='flag-5'>RT-Thread</b><b class='flag-5'>上</b>SPI的細(xì)節(jié)內(nèi)容

    RT-Thread全球技術(shù)大會(huì):KconfigRT-Thread中的工作機(jī)制

    RT-Thread全球技術(shù)大會(huì):KconfigRT-Thread中的工作機(jī)制 ? ? ? ? ? ? ? 審核編輯:彭靜
    的頭像 發(fā)表于 05-27 14:49 ?1543次閱讀
    <b class='flag-5'>RT-Thread</b>全球技術(shù)大會(huì):Kconfig<b class='flag-5'>在</b><b class='flag-5'>RT-Thread</b>中的工作機(jī)制

    RT-Thread全球技術(shù)大會(huì):RT-Thread編寫測試用例

    RT-Thread全球技術(shù)大會(huì):RT-Thread編寫測試用例 ? ? ? ? ? 審核編輯:彭靜
    的頭像 發(fā)表于 05-27 16:28 ?1481次閱讀
    <b class='flag-5'>RT-Thread</b>全球技術(shù)大會(huì):<b class='flag-5'>在</b><b class='flag-5'>RT-Thread</b><b class='flag-5'>上</b>編寫測試用例

    RT-Thread全球技術(shù)大會(huì):RT-Thread底層匯編及arm與riscv的差異

    開發(fā)者秦韋忠,RT-Thread全球技術(shù)大會(huì)上,以RT-Thread底層匯編及arm與riscv的差異為主題進(jìn)行了詳細(xì)的教程說明。
    的頭像 發(fā)表于 05-28 09:56 ?1636次閱讀
    <b class='flag-5'>RT-Thread</b>全球技術(shù)大會(huì):<b class='flag-5'>RT-Thread</b>底層匯編及<b class='flag-5'>在</b>arm與riscv<b class='flag-5'>上</b>的差異

    RT-Thread操作系統(tǒng)的FreeRTOS兼容層

    的兼容項(xiàng)目中。 1 概述 這是一個(gè)針對RT-Thread國產(chǎn)操作系統(tǒng)的FreeRTOS操作系統(tǒng)兼容層,可以讓原有基于FreeRTOS操作系統(tǒng)的項(xiàng)目快速、無感地遷移到RT-Thread操作系統(tǒng)
    的頭像 發(fā)表于 01-14 00:55 ?1648次閱讀

    RT-Thread文檔_RT-Thread 簡介

    RT-Thread文檔_RT-Thread 簡介
    發(fā)表于 02-22 18:22 ?5次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>RT-Thread</b> 簡介

    RT-Thread文檔_RT-Thread SMP 介紹與移植

    RT-Thread文檔_RT-Thread SMP 介紹與移植
    發(fā)表于 02-22 18:31 ?9次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>RT-Thread</b> SMP 介紹與移植

    手把手教你RT-THREAD bsp運(yùn)行pikascript腳本點(diǎn)亮小燈

    簡介 這篇文章介紹如何在RT-THREAD bsp運(yùn)行pikascript腳本。 pikascript相當(dāng)于一個(gè)小型的micropython。 原文: https://blog.csdn.net
    的頭像 發(fā)表于 05-25 07:45 ?899次閱讀
    手把手<b class='flag-5'>教你</b><b class='flag-5'>在</b><b class='flag-5'>RT-THREAD</b> bsp<b class='flag-5'>上</b>運(yùn)行pikascript腳本點(diǎn)亮小燈

    RT-Thread中的Github Actions

    RT-Thread中一共有五個(gè)Github Action(rt-thread/.github/workflow) 分別是: RT-Thread
    的頭像 發(fā)表于 06-01 03:10 ?724次閱讀
    <b class='flag-5'>RT-Thread</b>中的<b class='flag-5'>Github</b> Actions

    RT-Thread v5.0.2 發(fā)布

    RT-Thread 代碼倉庫地址: ●? https://github.com/RT-Thread/rt-thread
    的頭像 發(fā)表于 10-10 18:45 ?1502次閱讀
    <b class='flag-5'>RT-Thread</b> v5.0.2 發(fā)布

    快速上手micro rosRT-Thread

    快速上手micro ros && RT-Thread(serial和udp方式)
    的頭像 發(fā)表于 10-26 16:13 ?1168次閱讀
    <b class='flag-5'>快速</b>上手micro ros<b class='flag-5'>在</b><b class='flag-5'>RT-Thread</b><b class='flag-5'>上</b>

    RT-Thread 新里程碑達(dá)成——GitHub Star 破萬!

    RT-Thread實(shí)時(shí)操作系統(tǒng)開源項(xiàng)目GitHub的star數(shù)量突破一萬!截止發(fā)文,RT-Thread作為實(shí)時(shí)操作系統(tǒng)在業(yè)界Star數(shù)量
    的頭像 發(fā)表于 07-04 08:35 ?481次閱讀
    <b class='flag-5'>RT-Thread</b> 新里程碑達(dá)成——<b class='flag-5'>GitHub</b> Star 破萬!