如何为新的开源贡献者创造一个友好的环境
文档:添加关于提交记录存放位置的说明 #66
由 Mux 赞助的 DEV 全球展示挑战赛:展示你的项目!
目录:
欢迎回家
说到如何营造一个友好的环境,美国南部的人们说得最好:“用蜂蜜比用醋更能吸引蜜蜂。”换句话说,友善才是留住人们的关键,开源项目也不例外。贡献者是项目发展的关键,因此,为他们创造一个合适的体验和环境,并鼓励他们持续贡献,至关重要。在这篇博文中,我将分享一些策略,帮助你留住项目的贡献者。
策略一:准备清晰的文档
您的 README 文件、贡献指南和教程是项目的关键组成部分;它们提供了理解和贡献项目所需的所有细节和步骤。如果缺少信息,就会造成混乱。例如,当我第一次为 Deal for Devs 项目做贡献时,我把提交推送到了项目的主分支,因为这是常见的做法。当我与项目负责人沟通后,我意识到这些提交应该推送到 dev 分支进行测试。于是,我将分支从主分支切换到了 dev 分支。完成贡献后,我在项目的 README 文件中添加了以下说明:
文档:添加关于提交记录存放位置的说明 #66
此拉取请求添加了关于将贡献推送到主存储库dev分支的特殊说明,使人们更容易有效地为项目做出贡献。
结束 #65
</div>
<div class="gh-btn-container"><a class="gh-btn" href="https://github.com/Learn-Build-Teach/deals-for-devs/pull/66">View on GitHub</a></div>
为了避免出现此类问题并不断改进文档,请考虑问自己以下问题:
- 对于初学者和开源新手来说,贡献指南是否容易理解?
- 您的项目是否接受新手贡献?如果不接受,请用友好而清晰的方式告知他们。例如:“虽然我们非常感谢大家的支持,但由于目前资源有限,我们暂时无法接受开源新手的贡献。”
- 可以在 README 文件中添加哪些示例,以帮助人们了解他们可以为项目做出哪些类型的贡献?
- 项目文档上次更新是什么时候?如果您想了解更多关于如何改进项目文档的技巧,请查看我在@get_pieces 上发表的文章《编写开发者喜爱的技术文档的 5 个技巧》。
清晰的文档只是为贡献者创造舒适环境的方法之一。这里还有另一种方法。
策略二:表达感激之情
在构建开源项目、进行代码审查、推广项目以及寻找贡献者之间奔波,要抽出时间感谢每一位贡献者,可能会让人感到不堪重负。我刚开始维护开源项目时,经常熬夜写感谢信,生怕贡献者感到被忽视或得不到应有的重视。但随着时间的推移,我意识到这种方法并不奏效,因为它会让我失眠,反而更难集中精力。以下是我使用过以及看到其他人使用的一些策略,可以帮助我更轻松地表达对贡献者的认可。
- 使用 GitHub 的已保存回复功能: 此功能在感谢贡献者的工作方面非常有用,因为我只需要选择一个已保存的回复,根据贡献的类型进行修改,然后点击提交即可。
- 使用 GitHub Action 或机器人:我强烈推荐使用all-contributors 机器人,因为每当有人向 Deals for Dev 提交 Pull Request 时,该机器人都会自动在贡献指南中添加贡献者的姓名和图标,以表彰他们的贡献。这大大简化了对贡献者的认可过程。
- 写一条感谢评论:如果您想更深入地参与其中,可以考虑像@adiatiayu为我们的 pizza-verse 代码库所做的那样,写一条感谢信息:
无论你采用何种策略,对开源新手表示赞赏,恰恰能够鼓励他们继续为项目做出贡献。此外,在为新的开源贡献者创造舒适的体验时,还有一种方法值得考虑。
策略三:建立清晰的贡献途径
初级开源贡献者不再参与你的项目的原因之一是,他们第一次贡献之后,没有明确的后续贡献途径。尽管在 README 文件中写明“我们欢迎各种类型的贡献”固然很好,但由于这种不确定性,贡献者有时会继续处理那些“适合新手入门的问题”。我在 LinksHub 的经验是,按难度和优先级对问题进行分类,可以帮助贡献者了解如何在自己的道路上不断成长,并鼓励他们思考自己是否已经准备好解决这些问题。在 OpenSauced,维护者会为那些从未参与过开源项目的人创建“仅限新手”的问题标签。一旦他们针对该问题的 Pull Request 被合并,就会被鼓励去解决那些带有“适合新手入门的问题”标签的问题。此外,“适合新手入门的问题”标签还会包含以下提示,以鼓励新贡献者不断提升技能:“如果你已经完成了一个适合新手入门的问题,不妨考虑解决另一个问题。”为了鼓励更多人参与,他们的开源入门课程的活动部分提到了其他可以贡献代码库的地方。
现在轮到你了
无论是创建协作路径、乐于接受反馈、恪守行为准则,还是表达感谢,人们总会记住你让他们第一次为你的开源项目做出贡献时的感受。如果你想了解更多有效维护开源项目的方法,请查看“新维护者资源”系列。
