开源软件指南

如何为开源做贡献

  • 为什么要为开源做贡献

    • 巩固现有技能
    • 遇到那些和你志趣相投之人
    • 寻找导师, 并且尝试帮助他人
    • 在公众间建立你的声誉 (职业口碑)
    • 学习领导和管理的艺术
    • 鼓励做出改变,哪怕改变是很微小的
  • 选择一个项目加入贡献

    • 分析感兴趣的开源项目
      • 一个典型的开源项目均会有如下类型的人:
        • 作者: 项目的创始人或创始组织
        • 归属者: 代码仓库或组织的管理员(不一定和作者是同一个人)
        • 维护者: 贡献者, 负责项目的未来走向和组织的管理(他们通常也是项目的作者或者归属者)
        • 贡献者: 只要是为项目做出了贡献,就算是贡献者
        • 社区成员: 那些使用项目的人们,他们或许是积极的讨论者,又或者是为项目的方向提出意见的人.
      • 开源项目文档文件说明
        • LICENSE: 根据开源软件的定义,每一个开源项目必须是有开源许可协议的
        • README: 是一个介绍性的说明文件,它通常会解释项目有何用处,为何发起,以及如何快速入门等.
        • CONTRIBUTING: 告诉人们对项目如何做贡献,解释目前项目需要什么样类型的贡献者,社区的流程是什么样的
        • CODE_OF_CONDUCT: 项目的行为准则文件,是一些参与社区时的一些礼仪、说话方式、行为等.
        • 问题追踪: 这里是人们讨论项目相关问题的地方
        • Pull requests: 审核代码、以及相关的问题讨论
        • 论坛或邮件列表:
        • 即时在线聊天: 有一些项目会使用聊天频道(诸如Slack或IRC)
  • 找一个项目开始贡献 *

开始一个开源项目

为项目寻找何时的用户

打造受欢迎的社区

维护者最佳实践

领导力和治理

通过为开源工作获得报酬

行为准则

开源衡量标准

开源的法律保护

Reference materials

[1] opensource [2] codeTriage