如何参与开源项目
目录
文章简介:如何参与开源项目。在这里分享一些思路和开源资源。
简介
自从学习计算机开始,很多时候希望自己能够也为 opensource 贡献一些什么。这里会总结一些思路为开源做些什么。
思路
Start Your Open Source Career这里简述了如何参与开源项目。对自己有很多启示。我们在工作学习中也会有一些自己感觉很好的对某个技术问题的解决方式,希望可以分享给大家,或者希望学习新的知识,成为某个工具的核心维护者。 这里会总结一些比较好的参与开源项目的思路。
good first issue
or help wanted
很多开源项目的issue
中已经标记出很多类似good first issue
or help wanted
的 label,这些 label 表示新人可以来帮忙。可以通过一些网站找到打相应 label 的项目,这可能成为你贡献开源项目的开端。
或许这些网站可以帮到你(来自 github):
- 开源星期五 - opensourcefriday 统计自己参与的项目,同时推荐如何开始
- github-explore github 会为你推荐一些你感兴趣的项目
- project-based-learning Curated list of project-based tutorials
- first timers only 贡献 pr 需要的 git 知识,label 搜索,相关订阅提醒等
- codetriage 订阅 github 中的项目,issue 等,方便通知自己感兴趣的项目
- issuehub 按照标签搜索项目
- pullrequestroulette 检索需要 reviews 的 pr
- up-for-grabs.net 根据 label 等检索项目
- how-to-contribute/#a-checklist-before-you-contribute
思路
构建一些工具
比如构建一些项目模版,比如graphql+mongoboilerplate. 比如编写一些平时可以提高工作效率的工具,alibaba/arthas
成为新的维护者
有很多有价值的项目因为没有维护者渐渐被人遗弃。你是否可以成为新的维护者呢?可以通过邮件、twiter 等联系原作者,成为项目维护者是不是很棒?
创建自己的项目
如果自己有对新的技术问题的解决办法,可以开源出来,分享自己是如何解决的
发布,推广,分享
为了确保每个有需要的人都乐意来找到你的模块,你必须:
- 撰写 readme 等
- 为项目撰写精心设计的在线网站,和文档,可以使用静态网站工具生成,如vuepress
- 在 StackOverflow 和 GitHub 等社交媒体中寻找相关问题并贴出你的项目,并解答
- 将项目发布到汇集开源项目的社区中,如HackerNews、reddit、producthunt、hashnode
- 参与一些线下分享、讨论会、演讲等中介绍你的项目
链接
- octobox 将你的 GitHub 通知转成邮件的形式,这是避免因堆积「太多问题」以至于影响关注重要问题的很好的方法
- probot GitHub App 可以自动化和改善你的工作流程
- refined-github 浏览器扩展,简化了 GitHub 界面并添加了有用的功能
- Start Your Open Source Career
- mattermost-server
- project-based-learning#go
- awesome-for-beginners
- merging-vs-rebasing