Table of contents
推广开源开发的实践
活动编号:GGI-A-25。
描述
此项工作的目的是在开发团队中定义、积极推动和进行开源实践。
作为起点,可以考虑关注以下内容:
- 用户和开发者文档。
- 在公开可访问的代码仓库中妥善组织项目。
- 推动并执行可控的代码复用。
- 提供完整的最新产品文档。
- 配置管理:Git工作流程、协作模式。
- 发布管理:尽早且频繁地发布稳定版本和开发版本。
开源软件项目有一种独特的集市模式运作方式。为了促进这种协作和思维方式,推荐采取以下方法实践,以便于第三方开发者可以进行协作和分布式开发以及参与贡献…
社区文档
确保公司内的所有项目都能提供以下文档:
- README —— 项目的简介、如何进行互动以及相关的资源链接。
- 贡献——为愿意参与贡献的人提供的介绍。
- 行为准则 —— 在社区内可接受或不可接受的行为准则。
- LICENSE—— 本代码仓库的默认许可证。
代码复用
代码复用是欧洲自由软件基金会提出的一项倡议,旨在提高软件的复用率,简化开源软件和许可证合规性。
可行性评估
尽管这在很大程度上取决于团队对开源软件基本常识的认知,但进行人员培训并创建规范的流程总是有益的。当出现以下情况时这一点尤其重要:
- 潜在的用户和贡献者不详、
- 开发人员不习惯开源开发方式。
进度评估
以下验证点将呈现此项工作的进展:
- 该项目制定了一份开源实践清单,以供参考。
- 监控项目以保持其与实践一致。
- 开发团队已经建立了遵守开源实践的意识。
- 定期评估新的开源实践,并努力地执行下去。
工具
- 软件复用辅助工具 可帮助版本库符合REUSE 实践。它可被纳入许多开发流程,以确认当前状态。
- ScanCode能够列出存储库中的所有社区和法律文档:参见 功能描述。
- GitHub 有一个很好的功能来检查丢失的社区文档。可以在存储库页面>“洞察”>“社区”中找到。
建议
- 开源实践的列表应根据项目的背景和领域来确定,并且应该以持续改进的方式定期重新评估。应监控和定期评估这些实践,以跟踪进展情况。
- 对人员进行有关复用开源(作为消费者)和反哺开源(作为贡献者)的培训。
- 鼓励如 #14那样 实施软件的复用。
- 建立流程来管理与软件复用和软件贡献相关的法律风险。
- 明确鼓励人员为外部项目做出贡献。
- 提供项目结构的模板或官方指南。
- 设置自动检查以确保所有项目都符合指南要求。
资源
- OW2 的开源实践案例清单 来自市场成熟度评估方法。
- 软件复用官方网站 包含规范、教程和常见问题解答。
- GitHub 社区指南。
- 使用 GitHub 配置管理的实践案例。
下一步工作建议
- GGI-A-42 - 管理开源技能和资源 您可以将确定的开源开发实践列表添加到一般培训资料中。
- GGI-A-44 - 进行代码审查 代码审查是开源开发实践的基本要素。