最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

第一次給知名項(xiàng)目貢獻(xiàn)代碼,有點(diǎn)緊張

2021-04-06 18:48 作者:程序員魚皮  | 我要投稿

大家好,我是魚皮的小老弟阿巴,大家也可以叫我小阿巴。

我也對(duì)編程非常感興趣,但還是小白一枚。這幾天放假來哥哥家玩,本來想著魚皮哥哥學(xué)計(jì)算機(jī)、設(shè)備多,會(huì)帶我打打游戲什么的。結(jié)果沒想到剛到他家,就問我編程學(xué)的怎么樣了,甚至還想拉著我敲幾天代碼。

第一天,魚皮哥哥就問我知不知道一個(gè)叫 GitHub 的網(wǎng)站。這我怎么會(huì)不知道,世界上最大的代碼開源平臺(tái)唄,可以在上面找到很多對(duì)學(xué)編程有幫助的項(xiàng)目。他之前寫過一篇怎么找優(yōu)質(zhì)項(xiàng)目的文章:【硬核干貨】如何高效找到優(yōu)質(zhì)編程項(xiàng)目?,我還是認(rèn)真看了的。

然后他接著問我有沒有參與過開源項(xiàng)目、貢獻(xiàn)代碼什么的。這我還真沒試過,雖然一直在 GitHub 上看項(xiàng)目,但從來沒有想過自己參與項(xiàng)目。一方面是擔(dān)心自己實(shí)力不夠,覺得能給開源項(xiàng)目貢獻(xiàn)代碼的都是大神;另一方面是不知道如何給項(xiàng)目貢獻(xiàn)代碼、從何處下手。

沒想到魚皮邪魅一笑,說:“其實(shí)貢獻(xiàn)代碼沒那么難,讓我來教你吧!”

完了,這下整個(gè)假期估計(jì)就只能敲代碼了。

不過沒想到,在魚皮哥哥的指導(dǎo)下,很快我就學(xué)會(huì)了如何給開源項(xiàng)目貢獻(xiàn)代碼,還實(shí)際操作了一波!

我做了些筆記,下面分享給大家,幫助每位學(xué)編程的同學(xué)參與到開源項(xiàng)目中。

第一次參與開源

相信很多同學(xué)和我一樣,對(duì)參與開源項(xiàng)目望而卻步,主要是因?yàn)檫@兩點(diǎn):

  1. 不知道如何貢獻(xiàn)代碼

  2. 找不到合適的項(xiàng)目參與,不知道貢獻(xiàn)哪些代碼

下面推薦兩個(gè)方法,分別解決這兩個(gè)問題。

如何貢獻(xiàn)代碼

其實(shí),GitHub 上就有一個(gè)現(xiàn)成的教程項(xiàng)目 first-contributions,為初學(xué)者帶來一個(gè)簡單的方法來學(xué)習(xí)及參與開源項(xiàng)目。

如該項(xiàng)目作者所說,沒有什么學(xué)習(xí)方法能比實(shí)際動(dòng)手做更好,因此,這個(gè)項(xiàng)目不是簡單的圖文教程、更沒有繁雜的理論知識(shí),更像是一本有趣的說明書,一步步引導(dǎo)你去使用 GitHub 的 Fork、Clone、分支、代碼提交、代碼發(fā)布、提交 Pull Request(合并請(qǐng)求)等完整的項(xiàng)目代碼提交流程。

fork 倉庫

作者非??犊?,允許大家直接拿這個(gè)教程項(xiàng)目來實(shí)戰(zhàn)學(xué)習(xí),并接受大家的合并請(qǐng)求。由于這個(gè)項(xiàng)目的 star 數(shù)也接近 2 萬,所以只要你跟著教程給這個(gè)項(xiàng)目做貢獻(xiàn),也可以說是參與了一個(gè)知名項(xiàng)目啦!

發(fā)起合并請(qǐng)求

找到自己能貢獻(xiàn)的代碼

學(xué)會(huì)了貢獻(xiàn)代碼的操作方法后,到哪兒去找適合自己的項(xiàng)目去參與和貢獻(xiàn)呢?

建議首選自己熟悉的項(xiàng)目,在熟悉的項(xiàng)目中再優(yōu)先選擇自己用的比較多的功能,先試著貢獻(xiàn)一些小的修改。通常先從修復(fù)一些文檔的 bug、或者補(bǔ)充文檔和代碼注釋開始。比如現(xiàn)在很多 GitHub 的成熟項(xiàng)目發(fā)展飛速,但可能成員都去開發(fā)新功能了,導(dǎo)致文檔年久失修,如果你正好用到了這個(gè)項(xiàng)目,發(fā)現(xiàn)了文檔的錯(cuò)誤,不妨試著修復(fù)一下,雖然工作不大,但相信會(huì)給你帶來很大的成就感。

很多項(xiàng)目的文檔都有編輯鏈接

通過閱讀和修改文檔,你可以進(jìn)一步熟悉項(xiàng)目,了解他的設(shè)計(jì)思想和技術(shù)架構(gòu)。平時(shí)如果在使用項(xiàng)目功能時(shí)遇到 bug,可以 提個(gè) issues(不是只有提交代碼有價(jià)值,提出問題也是在做貢獻(xiàn)),然后可以試著自己修復(fù)這個(gè)小 bug,有些可能只需要改幾行代碼,但影響會(huì)很大,成功修復(fù)也能得到很多同學(xué)的認(rèn)可,從而激勵(lì)你進(jìn)一步優(yōu)化和完善這個(gè)功能,提升自己的水平。

哪怕自己沒有遇到什么項(xiàng)目的 bug,也可以直接到項(xiàng)目的 issues 頁面 查看其它同學(xué)遇到的問題,很多問題其實(shí)并不麻煩,只是官方無暇去解決,這往往就是我們參加開源的最佳時(shí)機(jī)。

比如阿里的 Ant Design 項(xiàng)目,還有近 600 個(gè)待解決的問題!

這么多的 issues,怎么選擇適合初學(xué)者解決的問題呢?

其實(shí)非常簡單,直接訪問 github.com/<owner>/<repository>/contribute 地址,就能夠查找出指定倉庫中適于初學(xué)者參與的議題。

比如 Ant Design 項(xiàng)目,就訪問地址:https://github.com/ant-design/ant-design/contribute,進(jìn)入到倉庫貢獻(xiàn)頁,其實(shí)就是在倉庫后面加個(gè) contribute 而已。

然后你就能看到很多打上了 good first issue 標(biāo)簽、適合初學(xué)者解決的問題,以及一份倉庫貢獻(xiàn)指南:

倉庫貢獻(xiàn)頁面

這些問題通常解決難度不大、成本不高,而且非常具有學(xué)習(xí)意義。

試著解決 issue

強(qiáng)烈建議先 閱讀貢獻(xiàn)指南,然后學(xué)習(xí)下別人解決問題的思路,再自己動(dòng)手嘗試!

當(dāng)你解決的問題越來越多,或者對(duì)項(xiàng)目足夠熟悉后,你可以給整個(gè)項(xiàng)目開發(fā)新功能,甚至加入項(xiàng)目的核心團(tuán)隊(duì)!當(dāng)然,這是后話,從編程小白逆襲為開源大佬,不敲個(gè)幾十萬行代碼,我覺得不行。

好了,就分享到這里。

雖然這個(gè)假期被魚皮哥哥拉去敲了幾天代碼,沒有打成游戲,但還是 點(diǎn)個(gè)贊 感謝他吧,以后多給開源項(xiàng)目貢獻(xiàn)代碼,俺的水平不得起飛了??!

發(fā)現(xiàn)項(xiàng)目:https://www.code-nav.cn/rd/?rid=28ee4e3e604f7ce60ad166027f272d9e


第一次給知名項(xiàng)目貢獻(xiàn)代碼,有點(diǎn)緊張的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
治多县| 孝昌县| 桦南县| 资中县| 青州市| 云林县| 弥勒县| 蕲春县| 贵港市| 墨江| 宜阳县| 马公市| 林州市| 康乐县| 察哈| 镇赉县| 札达县| 温宿县| 湘潭县| 云安县| 灵宝市| 河北省| 龙南县| 台江县| 德格县| 鹿泉市| 全椒县| 淮滨县| 吴旗县| 丰宁| 万源市| 江华| 同仁县| 铜陵市| 资中县| 甘泉县| 阿图什市| 寿宁县| 阜新市| 武陟县| 青岛市|