開源專案初體驗 — 解 Issue 心得分享

Alan Syue
4 min readSep 13, 2020

--

photo needpix

自從參加了今年的 開源人年會(COSCUP),看到許多人努力貢獻開源專案,以及最近讀了 Starbugs Weekly 星巴哥技術專欄別猶豫了,今天就上 Github 參與開源專案吧! 便對貢獻開源專案躍躍欲試。

第一次貢獻開源經驗

記得在還沒轉職工程師之前,因工作上需求,想獲取 Google Play 商店上 APP 的評論資訊,在 GitHub 上找到一個開源專案,但有些地方已經年久失修了,於是就 fork 一份回去修改,發 PR 給原作者也被 merge,應該算是第一次貢獻開源的經驗(?)

參考文章:3 步驟獲取Google Play 中APP數據 — Python 爬蟲

被 merge 的 PR

從碰過的專案找 Issue

根據 別猶豫了,今天就上 Github 參與開源專案吧! 文章建議,可以先挑自己有在用的 Library 或開發工具開始,不過我倒是找了之前覺得很有趣的專案:Alex-Rose/fb-messenger-cli,之前覺得很有趣還有寫了一篇 上班一定要看(誤) | fb-messenger-cli 專案使用分享

雖然作者已經有段時間沒在更新了(上次 commit 時間是 2019–08–08),不過我還是到 Issues 去找找有什麼我這初心者能幫忙的。

有許多 Issues

剛好看到一個 Issue 是 #218 Crashing when trying to logout after resetting fb password,問題大致上是說:

使用 npm install 完 fb-messenger-cli,下了 /logout 指令後,跳出以下錯誤訊息

錯誤訊息

看起來不是太難的問題,應該蠻適合我來嘗試看看。

開始解決問題

我也嘗試下 /logout 指令,確實出現一樣的錯誤訊息:

於是我 clone GitHub 上的原始碼,看了一下錯誤訊息的位置,程式碼看起來沒什麼問題,使用 fs.unlink 有加上 callback function。

執行 clone 回來的程式碼,下 /logout 指令也沒有錯誤訊息

後來直接去查看 yarn、npm 載回來最新版 2.1.1 的程式碼,出錯的程式碼竟然跟 GitHub 上的不一樣,看起來就是這個問題啦。

回覆 Issue

於是我把發現的問題回覆到原 Issue,也剛好看到有人回報一樣的 Issue,於是就兩個一起回,但也發現 我的英文真的超級爛 ,怎麼寫看起來都怪怪的,於是找人幫我修修句子,便留言回覆。

不過詢問者已經沒有在使用這個專案了,它就先把這個 Issue close。

總結

雖然這次先嘗試解決小 Issue,但過程真的蠻有趣的,之前在使用此工具也沒有很認真研究是怎麼做的,也透過這次機會了解一下作者怎麼設計和撰寫程式碼,覺得挺有趣的,希望往後能在嘗試解決其他 Issue,甚至是實作 Feature 發 PR 被作者 merge。

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Alan Syue
Alan Syue

Written by Alan Syue

Backend Engineer at UPN | Love to share everything

No responses yet

Write a response