本文共 2077 字,大约阅读时间需要 6 分钟。
如何在开源社区贡献代码
十月份总是有很多令人兴奋的事情:毛衣天气,南瓜香料,万圣节服装,以及最近三年的 。
Hacktoberfest是“为期一个月的开源软件庆祝活动”。 它由DigitalOcean和DEV共同组织,并向所有人开放。 以我的经验,Hacktoberfest是开放源代码用户成为开放源代码贡献者的一种简便方法。 它也是庆祝活动和面向社区的活动,总是包含一些做工精美的艺术品,后来又变成了贴纸。
刚拿到我的贴纸! 感谢和 😊🤗我去拿T恤明年💪💪
-罗莎(@rosapolis)
,只需注册该活动,然后从现在到10月31日,向公共GitHub存储库提交四个合格的拉取请求; 前50,000个同时执行上述两项操作的人将获得免费的T恤。
像许多其他人一样,我更是一个用户,而不是开源的贡献者。 我已经一年多没有维护过项目了,Hacktoberfest给了我一个很好的借口,可以在没有维护者身份的压力的情况下随意地再次捐款。 我发现,这比整年的一次性捐款少得多,因为Hacktoberfest的商标暗示着“嘿,过来,贡献一点”的态度。
多年来,我已经养成了一些习惯,这些习惯使我成为开源贡献者。 我希望他们也能为您提供帮助,无论您是Hacktoberfest的和首次参与者,还是寻求改进方法的常规贡献者。
开源是如此普遍,以至于(也有点)容易忘记我们每天都依赖它。 从这里开始,使用您最依赖的东西。 例如,我使用了周围的开源包装程序来跟踪所有内容。 我使用MIT许可的出色应用启动器启动Tusk。 这两个都是我在Hacktoberfest期间做出贡献的主要目标。 我还使用安装了这些文件, 是Mac上最好的软件包管理器,最近开始支持Linux。
因此,我将转到每个GitHub存储库,并搜索#Hacktoberfest,以期找到可以解决的公开问题。
如果您正在寻找一个可以为之贡献的项目,那么整个GitHub生态系统中都会有#Hacktoberfest标签的项目。 Digital Ocean在其上提供了一种探索这些项目的 ; 只需向下滚动页面以查看谁在寻求帮助。 您还可以通过编程了解的语言(或想要使用的语言)进行搜索。
有时,我会直接去找源头,找到我想做的贡献。 例如,我对量化自我的概念(或汇总个人使用数据以了解自己)感兴趣,通过搜索,我遇到了项目。
在探索新事物时,我会先从一个未解决的问题开始,并标记它的所有者,以确保在创建请求的拉取请求(PR)之前,他们了解该想法并批准了支持。 但是,如果上面已经有#Hacktoberfest标签,则可以跳到Issue中并添加评论。
从一个问题开始是一个好主意,以确保要修复的任何内容都将作为请求请求受到欢迎并最终合并。 并非所有项目都准备好接受新的贡献者。
一些项目使用“声明”问题的概念,并且如果有人正在处理它,则会将其标记为声明。 许多人没有,但是我仍然用“我现在正在研究”或“我本周正在研究公关”之类的话来评论这个问题。
直到今年,我才知道有一个名为的项目,该项目将为您提供一些新的想法,以帮助您做出贡献。
许多维护者都没有听说过Hacktoberfest,也没有用#Hacktoberfest标签来标记问题。 我喜欢推荐他们这样做,以撒些随机捐款的善意
这是一个双赢的方案:维护人员进入Hacktoberfest潮流之后,我就可以作为参与者赚取PR(赚取,互联网积分)。 此外,他们将得到一群像我一样的人寻求帮助。
鉴于软件的更改速度之快,文档几乎不可避免地过时了。 对于开放源代码项目,我最尝试,最真实的方法是使用项目并打开PR,以解决文档中出现的小问题。 那可能是修复不正确或丢失的安装说明,更新教程或在指南中添加其他示例或资源。 要让如此多的人关注项目采用中最重要的部分,还有很长的路要走。 这是看起来像 。
开源贡献 。 今年,我将首次共同举办一次Hacktoberfest活动。 甚至还有关于如何操作的 (我们将使用)。
这个想法开始于与我的新家乡明尼阿波利斯的某人进行Twitter交谈。 当我考虑到这一点时,我意识到自己可以成为这一事件的催化剂。 为了帮助实现这一目标,我与一群定期主持JavaScript和无服务器聚会的人员合作。
幸运的是,将其付诸实践的努力将是轻而易举的,而我将做我最喜欢的事情:与我的当地社区建立联系。
Hacktoberfest是加入开源软件的绝妙理由。 照原样进行:如果您足够了解如何修正Python语法,那就去吧。 如果您正在学习Go,请使用Hacktoberfest作为将某些知识应用于有需要的人的理由。 如果您还没有学习语言,但是您正在学习Git技能,请学习足够的Markdown来帮助编写文档,因为每个项目都需要更多文档。 感谢活动赞助商使之有趣!
翻译自:
如何在开源社区贡献代码
转载地址:http://xqizd.baihongyu.com/