最新发布《数智时代的AI人才粮仓模型解读白皮书(2024版)》,立即领取! 了解详情
写点什么

开源项目运营经验谈

  • 2015-05-11
  • 本文字数:936 字

    阅读完需:约 3 分钟

从 GitHub 的用户基数来看,开源社区中有超过 850 万人在向开源软件做贡献。 Brian Hyder PencilBlue 的联合创始人兼首席技术官。近日,他根据自己运营开源项目的经验,探讨了如何吸引开源社区成员为项目做贡献以及如何确保项目的正常运转。

Brian 认为,开源项目运营可以归结为以下三个方面。

首先是明确项目愿景。通常,人们为项目做贡献,是因为该项目要解决的问题同他们要解决的问题一致。而且他们会希望,项目目标与他们的目标一致,而不仅仅是满足他们的即时需求。因此,非常有必要在 README 中明确描述项目愿景。但这还不够,为了使潜在的用户和贡献者对项目有信心,项目运营者还应该提供一个路线图。路线图上的时间不宜太具体,因为有时候用户反馈会导致项目运营者调整开发的优先级。比如,“多媒体服务将在 12 月份完成”要好过“多媒体服务将在 12 月份第二个周完成”。另外,贡献者 / 用户越多,项目愿景的要求就越高。项目运营者需要选择一个对项目而言最好的愿景,而不是对于个人而言最好的愿景。总之,项目必须满足用户的需求。

其次是制定项目贡献流程,确保贡献者总是在项目愿景范围内做贡献,保证代码的可维护性以及减少不必要的审核工作。以下是 Brian 提供的一些建议:

  • 每个问题或特性创建一个分支
  • 每个分支的名称均要包含问题编号
  • 确保针对分支进行了所有的单元测试
  • 尽量不要合并自己的 pull 请求
  • 注明为什么采用那种方式,让 pull 请求成为一个学习过程

最后是要带给人良好的感觉。网站、文档及 README 会给人第一感觉,它们可能会影响人们对相似项目的选择。代码质量确实可以体现出项目优劣,但人们在选择时通常不会首先研读代码。人们的贡献是项目的脉搏,脉搏稳定也有利于项目的长远发展。另外,可以利用一些工具增加项目的透明度:

除了相应的功能外,这些工具还提供了徽章,标明了项目所处的阶段。这可以使其他人对项目运营者的代码能力产生信心。


感谢崔康对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群InfoQ 好读者)。

2015-05-11 06:362212
用户头像

发布了 1008 篇内容, 共 374.2 次阅读, 收获喜欢 341 次。

关注

评论

发布
暂无评论
发现更多内容

iNet Network Scanner for Mac(mac网络扫描工具) v3.1.0永久激活版

iMac小白

Ableton Live 12 Suite for mac(音乐制作工具) v12.0.1中文激活版

iMac小白

平台工程——让企业项目实现高效、低成本、高质量的落地

Tp_jh

DevOps 云原生 IDEA 平台工程 java 架构

JetBrains Rider for mac(跨平台.NET IDE集成开发) v2023.3.4激活版

iMac小白

从单机到分布式微服务,大文件校验上传的通用解决方案

EquatorCoco

分布式 微服务 单机

程序员排查BUG指南

宇文辰皓

bug定位

Room Arranger for Mac(简单易用的室内设计软件) v9.8.3.645中文激活版

iMac小白

Caffeinated for Mac(系统防睡眠工具) v2.0.5激活版

iMac小白

Beyond Compare 4 for Mac(好用的文件对比工具) 4.4.7(28397)中文版

iMac小白

说JS作用域,就不得不说说自执行函数

快乐非自愿限量之名

js 函数 开发语言

被 AI 写的游戏代码砸中是什么感觉 | 10 分钟打造你的超级 AI 编码助手

阿里巴巴云原生

阿里云 云原生 通义灵码

分享一个国内可用的AIGC生成平台|免费创作

京东科技开发者

【教程】为什么要为 App 应用加固 ?如何为 App 应用加固 ?

20年编程,AI编程6个月,关于Copliot辅助编码工具,你想知道的都在这里

京东科技开发者

中国移动端第三方输入法市场专题分析2024

易观分析

报告 输入法

【AAAI 2024】MuLTI:高效视频与语言理解

阿里云大数据AI技术

人工智能 机器学习 模型训练 大模型

System Dashboard Pro for Mac(专业系统监视器) v1.10.6激活版

iMac小白

项目性能优化—使用JMeter压测SpringBoot项目

不在线第一只蜗牛

性能优化 项目开发

hash哈希竞猜游戏开发模式丨哈希游戏竞猜玩法系统开发技术功能

西安链酷科技

哈希值

轻播zFuse Pro for Mac(简单小巧的视频播放器) v1.7.38直装版

iMac小白

Perfectly Clear Workbench for Mac(智能图像清晰修复软件) v4.6.0.2644永久激活版

iMac小白

DxO PhotoLab 7 for Mac(专业照片编辑软件) v7.5.1.49激活版

iMac小白

Java 代码执行本地命令

emanjusaka

Java command exec

软件测试学习笔记丨测试左移体系

测试人

软件测试

【教程】苹果iOS证书制作教程

聚道云如何实现薪人薪事与金蝶云无缝对接,破解财务难题?

聚道云软件连接器

案例分享

探秘服务器云托管的优势与特点,助你选择最佳方案

一只扑棱蛾子

Python实现:教你轻松统计文件夹下文件个数

霍格沃兹测试开发学社

面试官:SpringBoot如何优雅停机?

王磊

Java 面试

如何使用Python去除文件后缀名?

霍格沃兹测试开发学社

Python教程:如何获取颜色的RGB值

霍格沃兹测试开发学社

开源项目运营经验谈_语言 & 开发_谢丽_InfoQ精选文章