Git + hub = Github
大多數學生maker都聽説過Github,但是不是所有的都知道Github到底是什麽、該怎麽使用,實際上,Github就是使用Git作爲版本控制工具的綫上代碼托管平臺(hub),Git提供版本控制,hub提供托管平臺,合起來就是Github!
Ameba + Github
Ameba的開源SDK (Software Development Kit) 也是全部托管在Github上面,這裏包括
大家可以點擊上面的文字鏈接來訪問所有的SDK。那麽既然SDK全部托管在Github上面,該如何使用這個平臺把自己做好的功能/軟體庫加入Ameba的官方Github倉庫呢? 接下來就用5分鐘時間,以Ameba的Arduino SDK爲例,給大家快速演示一下使用Github來貢獻Ameba的方法!
Ameba Arduino倉庫的貢獻流程
不管是什麽開源專案,第一部都要看一看這個開源專案作者所留下的README,這裏以Ameba的Arduino倉庫爲例,來看一下它的README吧
一. 快速瀏覽README
二. 查看貢獻者須知
因爲README裏面有寫貢獻者須知,所以爲了尊重原作者的無私分享,以及讓自己的提交的新的功能可以更快地被接納,我們要看一下須知裏的内容
ok,看了之後會發現,主要的内容是關於統一代碼風格以及填寫的提交信息的格式。 那麽所有的信息都瞭解了,現在可以正式開始了。
三. 創建一個fork
PS: 在正式開始之前,一定要確認你已經有了一個Github的賬號,Github是完全免費的服務,所以可以放心注冊。
想要把新的功能加入官方的代碼倉庫的第一步,就是創建一個跟它一摸一樣的倉庫。
Github在這點上已經幫我們預備好了這個功能,那就是fork,
先找到想要fork的代碼倉庫,然後在Github頁面的右上角就能看到三個并排的按鍵,最右邊的就是fork按鍵,點擊fork (不要點旁邊的數字)就輕鬆搞定啦。
四. 在自己的fork中加入你的代碼
這次以我改進的 WiFi Control Car 專案爲例,這個專案使用了Ameba官方提供的HTTP網站頁面示例以及第三方的馬達控制庫,可以讓Ameba化身馬達控制器以及一個HTTP的服務器,只要用任意的瀏覽器登錄Ameba的服務器,就可以輕鬆遙控小車移動
這裏是演示影片
那麽源碼已經准備好了,該如何加入剛剛fork好的Github倉庫呢?步驟只有五個,
-
找到 “ambd_arduino/Arduino_package/hardware/libraries/WiFi/examples/ ” 的路徑
這裏是我們平時存放WiFi相關的example示例的地方,我們要先找到這個地方才能加入自己的東西 -
點擊右上角的Add file → Create new file
-
建立文檔和文件名
注意:Arduino IDE默認所有的ino格式示例都必須存放在同名的文件夾下面,所以我們在文本框中輸入“WiFiControlCar/WiFiControlCar.ino" 來創建示例代碼,
-
粘貼你的代碼進去吧
-
填入正確格式的提交信息並提交(Commit)
Add New WiFi Example Feature: - Add WiFiControlCar example
然後點擊Commit new file 就完成了!
五. 最後一步:創建合并請求(Pull Request)
到目前爲止,我們完成了代碼的上傳,但是還沒有將新的代碼加入官方的代碼倉庫中,那麽方法就是合并請求 Pull Request (簡稱 PR)。
接下來只需要幾個簡單的步驟就可以創建一個正確的PR,
-
回到我們fork過的原始代碼倉庫
-
點擊上面的Pull Request
-
點擊“compare across forks"
-
在"head repository"中選擇帶有我們自己賬號名字的fork
-
點擊”Create pull request"
接下來填入和提交信息一樣的PR信息即可。
成功!
完成! Congratulations
![]()
你剛剛完成了一個完整的綫上開發合作!
你的PR信息會以以下的形式呈現給代碼倉庫的管理者
接下來要發生的事情就是,這個代碼倉庫的管理者會審核我們提交的代碼,并選擇給出修改意見或直接批准並合并進入官方代碼庫(如果代碼風格和提交信息格式正確的話很容易就會直接批准)。
結語
希望通過這篇短文讓大家瞭解到Github的快速使用方法,當然,還有別的使用方法,但是本質都是一樣的三個步驟,即
- 加入新代碼 → 2.提交代碼 → 3. 提交PR
希望這篇文對大家有幫助,如果喜歡就請點贊吧~
那麽下次再見,Happy coding!