OpenHarmony是由開放原子開源基金會(OpenAtom Foundation)孵化及運營的開源項目,目標是面向全場景、全連接、全智能時代,搭建一個智能終端設備操作系統的框架和平臺,促進萬物互聯產業的繁榮發展。目前代碼倉托管在gitee上,官方地址https://gitee.com/openharmony,快去點擊關注吧。
下面主要來講講如何對OpenHarmony貢獻代碼。
1、fork OpenHarmony中的倉庫
截止目前為止,OpenHarmony共有276個倉庫,如下圖
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/7E/pYYBAGHlB66AABBDAAKFFUtAiUY260.png?x-oss-process=image/resize,w_820,h_949)
在”倉庫“tab頁面,根據自己擅長的技術方向和愛好選擇需要貢獻源代碼的倉庫,這里支持搜索,比如我選擇app_samples這個倉庫,如下圖
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/77/poYBAGHlB62AX5buAAGZ2vh2q90006.png?x-oss-process=image/resize,w_820,h_731)
進入到選擇的倉庫中,然后點擊fork,如下圖
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/78/poYBAGHlB66AfTKCAAKF5jmktFU526.png?x-oss-process=image/resize,w_820,h_810)
點擊fork之后,會有如下提示窗口彈出,選中自己的頭像之后,即可點擊確認按鈕
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/7E/pYYBAGHlB6yARxcmAADZnih0Tdw080.png?x-oss-process=image/resize,w_820,h_549)
fork完成之后,就會自動跳轉到自己的gitee倉庫頁面,里面會創建一個與你剛fork的倉庫同名的倉庫,如下圖
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/78/poYBAGHlB6-AeU4aAALyc_YZLKw316.png?x-oss-process=image/resize,w_820,h_929)
2、克隆fork出來的倉庫到自己的主機上
在我們fork出來的倉庫主頁復制https clone的地址,如下圖
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/7E/pYYBAGHlB66AetnwAAH0KpTFW_8418.png?x-oss-process=image/resize,w_820,h_569)
在本地的PC上運行如下命令將fork出來的代碼庫拷貝到本機的文件夾中
git clone 'https clone 的地址'
復制
比如我這里使用如下命令
git clone https://gitee.com/xdw1019/app_samples.git
復制
執行結果如下圖,耐心等待下載完成即可
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/78/poYBAGHlB66ACcr6AABQMpCpztE884.png?x-oss-process=image/resize,w_778,h_154)
3、配置本地倉與官方原始倉的關聯
這里先備注幾個名詞解釋:
官方原始倉:你想要貢獻的項目的官方倉庫地址
遠程倉:你fork完成之后,在你的gitee 頁面上那個與官方倉同名的倉庫地址
本地倉:git clone 遠程倉之后下載到你本地的代碼倉
進入我們的項目文件夾
cd
復制
添加與官方原始倉的關聯,命名為upstream
git remote add upstream ’官方原始倉的clone地址‘
復制
關聯好之后,可以使用下面命令查看關聯信息
git remote -v
復制
執行結果如下圖
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/7E/pYYBAGHlB6-AVKuXAACuCjsp6Gg300.png?x-oss-process=image/resize,w_820,h_361)
待關聯好了官方原始倉之后,就可以使用下面命令拉取最新的更新了
git fetch upstream
復制
4、新建開發分支進行開發
執行下面命令即可新建開發分支
# 新建分支,fixDoc為分支名稱,名稱自定義即可
git checkout -b fixDoc
復制
執行成果之后的截圖如下
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/7E/pYYBAGHlB6-AZSxRAAAgwRebe7U245.png?x-oss-process=image/resize,w_599,h_86)
4、開發分支上修改代碼并push到遠程倉
基本操作步驟命令如下
# 查看修改了那些文件
git status
# add提交到暫存區
git add .
# commit提交到本地倉,-m后簡要描述本次提交的內容
git commit -m "xxxxx"
# push到遠程倉
git push origin fixDoc
復制
我的操作截圖如下
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/78/poYBAGHlB7CAJL5cAAGeNnkqvkM836.png?x-oss-process=image/resize,w_820,h_767)
5、向官方原始倉提交Pull Request
打開自己fork的倉庫主頁,選擇Pull Request標簽,然后點擊新建Pull Request按鈕,如下圖
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/78/poYBAGHlB7GAYlmFAAFgCYHsdyU946.png?x-oss-process=image/resize,w_820,h_683)
點擊新建之后,會跳轉到官方原始倉的Pull Request頁面下,按照下圖填寫好相關的Pull Request信息即可
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/7E/pYYBAGHlB7GABl5LAAHduSerMik110.png?x-oss-process=image/resize,w_820,h_765)
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/7E/pYYBAGHlB6-AdwpNAAEd7xYXhTg884.png?x-oss-process=image/resize,w_820,h_762)
6、DCO簽署與驗證
提交的pull request首先要經過dco檢查,因此需要簽署原子基金會的DCO協議。
打開sign (openharmony.io)進行簽署即可。
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/7E/pYYBAGHlB7GAdoHCAAFKkb3NugU292.png?x-oss-process=image/resize,w_820,h_689)
注意:這里簽署的名字和郵箱要和git config中配置的用戶名和郵箱保持一致
比如我本地使用git config配置如下
git config --global user.name "夏德旺"
git config --global user.email "263201361@qq.com"
復制
然后將之前的commit的命令修改為
git commit -m "xxxxxx" -s
復制
此時可以通過git log看到提交日志如下圖,帶有 Signed-off-by:信息
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/78/poYBAGHlB7CAHzO0AABvJo6v3mI363.png?x-oss-process=image/resize,w_820,h_208)
配置好這些之后再來提交pull request的話就可以通過dco檢查了。
![開源掃盲--如何給OpenHarmony貢獻代碼-鴻蒙HarmonyOS技術社區](https://file.elecfans.com/web2/M00/2D/7E/pYYBAGHlB7KAZUMFAAFIqqlndgE446.png?x-oss-process=image/resize,w_820,h_633)
剩下的就等社區審核人員審核通過即可。
-
OpenHarmony
+關注
關注
25文章
3753瀏覽量
16710
發布評論請先 登錄
相關推薦
開源鴻蒙OpenHarmony社區運營報告(2025年1月)
![<b class='flag-5'>開源</b>鴻蒙<b class='flag-5'>OpenHarmony</b>社區運營報告(2025年1月)](https://file1.elecfans.com/web2/M00/8F/50/wKgZomTMciWAD54NAABOGP2pQZY452.png)
凌蒙派OpenHarmony開源項目榮獲本期Gitee官方推薦
![凌蒙派<b class='flag-5'>OpenHarmony</b><b class='flag-5'>開源</b>項目榮獲本期Gitee官方推薦](https://file.elecfans.com/web2/M00/26/21/pYYBAGG5jjSALfrEAAAwAa9Oig8799.png)
CCF開源創新大賽決賽結果發布!OpenHarmony應用開發賽道盡展風采
![CCF<b class='flag-5'>開源</b>創新大賽決賽結果發布!<b class='flag-5'>OpenHarmony</b>應用開發賽道盡展風采](https://file.elecfans.com/web2/M00/35/6C/poYBAGIq5qqAQJzlAAA5OpNWiJA439.png)
星光璀璨,聆聽 OpenHarmony 貢獻者之聲
OpenHarmony首次亮相歐洲開源會議
![<b class='flag-5'>OpenHarmony</b>首次亮相歐洲<b class='flag-5'>開源</b>會議](https://file1.elecfans.com/web2/M00/0B/30/wKgaomccZp2AVkczAAAgm0PURWk196.jpg)
第三屆OpenHarmony技術大會星光璀璨、致謝OpenHarmony社區貢獻者
高燃回顧|第三屆OpenHarmony技術大會精彩瞬間
第三屆OpenHarmony技術大會在上海成功舉辦
開放原子開源生態大會OpenHarmony生態主題演講報名開啟
400萬!深開鴻OpenHarmony主倉代碼貢獻量再創里程碑!
![400萬!深開鴻<b class='flag-5'>OpenHarmony</b>主倉<b class='flag-5'>代碼</b><b class='flag-5'>貢獻</b>量再創里程碑!](https://file.elecfans.com/web2/M00/35/6C/poYBAGIq5qqAQJzlAAA5OpNWiJA439.png)
【開源鴻蒙】下載OpenHarmony 4.1 Release源代碼
![【<b class='flag-5'>開源</b>鴻蒙】下載<b class='flag-5'>OpenHarmony</b> 4.1 Release源<b class='flag-5'>代碼</b>](https://file1.elecfans.com/web2/M00/DD/7F/wKgZomYtFoSAdY7EAACN2PSEOtQ539.png)
深開鴻升為OpenHarmony項目群A類捐贈人,引領開源生態新篇章!
![深開鴻升為<b class='flag-5'>OpenHarmony</b>項目群A類捐贈人,引領<b class='flag-5'>開源</b>生態新篇章!](https://file.elecfans.com/web2/M00/35/6C/poYBAGIq5qqAQJzlAAA5OpNWiJA439.png)
聚能共創下一代智能終端操作系統 軟通動力榮膺“OpenHarmony優秀貢獻單位”
![聚能共創下一代智能終端操作系統 軟通動力榮膺“<b class='flag-5'>OpenHarmony</b>優秀<b class='flag-5'>貢獻</b>單位”](https://file1.elecfans.com/web2/M00/C6/A5/wKgZomYLduKADuIwAAEAHmHzoA0285.png)
【鴻蒙】OpenHarmony 4.0藍牙代碼結構簡析
![【鴻蒙】<b class='flag-5'>OpenHarmony</b> 4.0藍牙<b class='flag-5'>代碼</b>結構簡析](https://file1.elecfans.com/web2/M00/C1/09/wKgZomXcRo6AFtQ8AAIhJd6EgqI689.png)
評論