记一次维护开源项目

1,644 阅读5分钟

后记

(2020.3.3补充)项目组为参与贡献者发放了证书以视感谢。

前记

鼠年春节之际,武汉新型冠状病毒 2019-nCoV疫情紧迫,在github上看到了 武汉新型冠状病毒防疫信息收集平台,找到了 该平台渐进式Web应用。放假在家,疫情当前,便想着给这个线上开源项目作出自己的贡献。

项目介绍

武汉新型冠状病毒防疫信息收集平台,针对 2020 年初在武汉爆发的新型冠状病毒疫情,本项目旨在收集各医院、酒店、工厂、物流、捐赠、捐款、预防、治疗、动态等信息,统一收集,统一发布,以便各方之间进行信息互通,有效调配社会资源。

因为是发起并开源不久的项目,所以还在开发中...

项目协作流程图

项目协作流程图

参与个人贡献

1.查看项目结构

查看项目结构:项目贡献者通过 Slack 交流群组石墨文档,进行项目沟通,找到web项目仓库。

渐进式 Web 应用

2.了解团队的工作流程

查看web项目仓库 Issues,在Issues中了解项目情况,查看项目代码结构。

3.使用团队使用工具Slack交流群组跟石墨文档需求

通过Slack 联系到项目的发起者后,开始了解项目现阶段的需求。

wuhan2020项目:

本项目核心是一个数据同步项目,把志愿者填写的石墨文档数据,同步到github上,然后方便各个端进行展示呈现。

  • ===技能组===
  • #team-designer-old 设计技能组
  • #team-requirement-management 产品需求管理技能组
  • #team-frontend 前端技能组
  • #team-backend 后端技能组 其他技能组channel欢迎添加,命名格式:team-技能名称
  • ===项目组===
  • #proj-datasync-eggjs-ts 数据同步项目
  • #proj-front-pages web展示项目
  • #proj-map-visualization 数据地图可视化项目 其他项目组channel欢迎添加,命名格式:proj-项目名称

石墨文档

项目志愿者通过石墨文档汇总 产品组收集Issues讨论的新增需求 与 新增贡献的数据信息

4.贡献代码

  • 跟团队沟通(或者在Issues上)领取任务
  • 可以在本地 Clone 存储库而无需 Fork ,但是除非你首先 Fork 了存储库,否则你将无法发出 pull request。
  • Forking 十分简单。只需要点击 GitHub 上的“Fork”按钮,它就会引导你创建一个该存储库的副本。
  • 存储库 Fork 之后,按照 GitHub 的提示将 Fork 的存储库克隆到本地。
  • 开始开发任务,我查看任务时候,当时有一个clinic列表页UI页面需要有人编写,因为数据接口还没写好,故先提交静态web页
  • 开发完自己的任务后,一定要测试它,验证它的适用性是非常重要的,在创建 pull request 之前,确保它能正常工作,不影响项目的运行。
  • 一旦提交了代码,请确保将其推送到了存储库的 forked 版本。为了创建 pull request ,这一步是必要的。
  • 这个项目现在还是发起人统一来合并请求,所以在提交代码后在Slack上发布消息即可。
如果项目允许自己合并请求,那么推送了自己的业务代码后,在 forked 仓库 ,
通过点击适当的提示来创建 pull request。
例如在下图中:左侧的分支和存储库代表要合并到的目标分支和存储库。
这个存储库应该是项目的主存储库,分支通常与你的所在分支相同。
右边的分支和存储库将是你刚才使用的 forked 存储库及其分支。接下来按照团队的约定给你的请求命名。

至此就为开源项目做出了一点贡献。 这个项目技术发起人用的 web-cell 了。

后记:

  • 2020-1-31 今天又参与产品组需求会议,讨论产品形态,确定以公众号自定义菜单栏为入口接口武汉2020web应用。

  • 2020-2-1 项目发起团队整理认证后的订阅号,今天重构了菜单栏。发布关于疫情知识的推文。

参与本项目体会:通过这几天的快速迭代,整个wuhan2020开始形成了一个公益社区与开源社区的混合体,非技术类的志愿者们通过微信群和石墨文档进行着有效协作,而程序员与开发者们则通过标准的Github和Slack进行着分布式协作。 有很多海外志愿者参与到本项目中,以至于有一个分组专门给海外志愿者倒时差。参与者比较热情参与进来,个人感受与跟同组成员沟通,产品组规划需求,后端数据接口集成,设计组设计logo跟UI图,虽有意见不同,但都本着自愿协同参与。目前处于封闭开发重构web应用,其他组继续协同开发。

问卷链接如下:

wuhan2020 开源项目组: shimo.im/forms/PWTTv…

  • 技术组:

    项目地址: github.com/wuhan2020/w…

    交流平台:Slack(Github 中有邀请链接)

  • 信息组(可靠真实信息的收集、录入与核实、分析。以供后台接入数据,提供数据给技术组)

  • 宣传组(品牌宣传、文案、视频海报设计、渠道等推广宣传工作)

  • 翻译组(新闻、推广信息等的翻译工作)

  • 产品组(希望有一定产品经历、若医疗健康领域、分类信息等领域经验者最佳)

  • 协调组(统筹协调工作,需要审核加入)

  • 产品体验组(负责产品用户研究,交互设计,体验及服务设计;以及提供心理帮助)