我的名字是 Yatharth Vyas,我是 GSOC21 的学生,正在从事功能增强项目。
克服对具有大量代码库的开源仓库贡献的恐惧
最近,我的一位熟人开始了他的开源之旅。他问我:“当你打开一个仓库时,首先看到的是大量文件夹和无数的文件,你如何不感到害怕?”。这让我回想起了我在开源贡献中迈出初步步伐的日子。如果我不承认我第一次感到畏惧,那是在撒谎。所以,我有句话要对所有处于我同样境地的开源新手说:‘你并不孤独,你不需要是个万事通’。
适应变化从来都不容易,但走出舒适区是提升自己的必要步骤。基于我的经验,我将一组步骤算法化,以帮助你攀登开源的阶梯。
回归基础:确保你具备仓库技术栈中编程语言的基本知识。字母组成单词,单词组成句子,这些句子融合在一起形成一种语言,帮助你读懂代码。尽管这是初步的,但这是最必要的步骤。
阅读文档:许多船只驶过文档的码头,因为他们忽视了阅读它们的重要性。阅读文档可能决定了你是阅读代码还是理解代码。还需要注意的是,文档通常按照特定的顺序编写,就像一本书,强烈建议按照顺序阅读,因为文档的每个部分都类似于小说的章节,早期的页面为后面的内容建立上下文。
浏览现有的PR:在开始深入研究和休息之前,有必要向你学习最好的。阅读已合并的PR可以帮助你理解仓库遵循的方法论和模板。尊重这些模板非常重要,如果你遵循与已合并PR类似的路线,那么你不仅会减少维护者在审查PR时消耗的资源,还能帮助自己增加合并PR的数量。建议你在掌握了PR的基本操作后测试一下。
准备出发:在这个阶段,你已经准备好接受你的第一个Issue。GitHub有一个非常好的功能,允许贡献者为问题分配'tag'。其中有一个'tag'叫做'Good First Issue',表示一个初学者友好的问题,通常有一个简单的修复。请记住,找到解决方案并不总是容易的,因此在这种情况下,建议使用GitHub中的'订阅主题'功能,这样当有人评论问题的发现或解决问题时,你会收到通知。阅读他们的解决方案将帮助你理解他们的方法,这将无疑帮助你培养解决未来bug的技能。有时,你的PR可能不会立即被合并,所以记住耐心是关键。如果维护者花时间合并你的PR或决定关闭它,你永远不应该感到被冒犯。前进的绊脚石是学习的一部分,应该被视为建设性的。
现在你必须等待你的PR被审查,然后享受开源贡献的最佳时刻,即你的PR被合并的喜悦。
遵循这些步骤,我能够为许多开源仓库做出贡献,其中一个是Joomla! CMS。我有幸在Google Summer of Code计划下作为学生开发者参与Joomla项目的工作,并由Joomla最有资格的专家指导。敬请期待下一博客,了解我在这个项目上的工作经历。