开源软件驱动了您日常使用的大部分技术,从屏幕上的网页浏览器到 在火星上飞行的 NASA Ingenuity 直升机。
为开源软件作出贡献可以让您提升技术专长、充实作品集、帮助塑造技术的未来,并与全球的开发者建立联系。
发现相关项目
面对跨越众多领域和技术的大量开源项目,找到从何开始贡献之旅可能会让人感到不知所措。如果您每天使用开源软件,那就是一个很好的起点!GitHub 还提供了多种工具,帮助您将搜索范围缩小到适合您领域的项目。
使用 Copilot Chat 查找开源项目
您可以使用 Copilot Chat 来帮助寻找符合您想要提升的领域或技能的开源仓库。
打开 Copilot Chat 并开始一次通用聊天。在本例中,我们会让 Copilot 寻找用 Python 编程语言编写的开源项目。
I'm looking for a list of open source projects written in Python that are accepting new contributors. Narrow down the list to repositories that use the `good first issue` or `help wanted` labels and have over 100 stars on GitHub.
I'm looking for a list of open source projects written in Python that are accepting new contributors. Narrow down the list to repositories that use the `good first issue` or `help wanted` labels and have over 100 stars on GitHub.
在搜索时使用 good first issue 和 help wanted 标签,可帮助 Copilot 过滤出适合首次贡献者的仓库。搜索完成后,Copilot 会提供一个链接,指向在您搜索上下文中带有这些标签的完整仓库列表。
使用其他资源寻找可贡献的项目
如果您对某个特定主题感兴趣,请访问 github.com/topics/<topic>。例如,如果您对机器学习感兴趣,可以通过访问 https://github.com/topics/machine-learning 找到相关项目和适合初学者的议题。您也可以搜索匹配您感兴趣主题的仓库。参见 搜索仓库。您还可以通过访问 Trending(趋势) 浏览当天的热门仓库。
如果您有兴趣为 减少软件碳排放 的项目贡献,请查看 GitHub 的绿色软件目录。
如果您在 GitHub 上活跃过,可在 Explore GitHub(探索 GitHub) 中找到基于您过去的贡献、星标和其他活动的个性化项目和首发议题推荐。
检查仓库是否活跃维护
在开始为开源仓库贡献之前,建议先检查该仓库是否正被积极维护。Copilot 可以分析仓库并告知您其近期活动情况。
- 在 GitHub 网站上,前往您想要讨论的仓库。
- 图标位于页面右上角。GitHub Copilot Chat 将显示。聊天面板顶部的标题会以附件形式显示仓库名称。
- 在提示框中输入“此仓库是否正在积极维护?”并按 Enter。Copilot 会在聊天面板中回复。
您也可以在仓库的 Insights(洞察) 选项卡下的 Pulse(脉冲) 视图中查看近期活动概览。请参阅 github/docs Pulse 示例,了解活跃的开源项目是怎样的。
寻找贡献方式
为开源项目贡献的方式有很多。
- 浏览问题跟踪器:寻找需要修复或复现的 bug、功能请求或文档改进。许多开源项目使用
good first issue或help wanted标签,让新贡献者更容易找到可着手的议题。 - 测试拉取请求:您可以通过将拉取请求合并到本地项目副本并测试更改来贡献。将测试结果以评论形式添加到该拉取请求中。
- 安装并测试项目:在使用开源项目时,记录您遇到的任何 bug、可用性问题或缺失的功能。分享这些痛点可为其他贡献者提供有价值的反馈。
- 改进文档:文档的改进几乎总是受到欢迎,同时也是在了解项目的过程中开始贡献的绝佳方式。
- 添加测试:许多项目需要更好的测试覆盖率,这既能帮助您了解代码库,又能提升项目价值。
每个开源项目对接受贡献的方式都有所不同。如果您想添加新功能或发现了 bug,最好先创建一个议题,概述您的方案,再投入大量开发时间。这样可以通过提前与维护者的期望保持一致来节省精力。
请记住,改进文档、设计或社区支持等非代码贡献同样有价值,而且通常更容易上手。
后续步骤
现在您已经找到可参与的开源项目,并了解了多种贡献方式,准备好进行首次贡献。前往 Contributing to open source(为开源做贡献),了解完整的贡献流程。