GitHub 怎么用?Issue 还能通过 Commit 来同步关闭?版本号是怎么定义的?如何自动发行版本?Commit 还有公约和规范?怎样做持续构建?如何在提交之前就做测试?测试覆盖率是什么?……
也许在工作中您会遇到诸如此类的问题,不论您是菜鸟还是老手,但愿这篇文章能让你在其中找到一些有价值或可借鉴的东西,这源自一个教我学会「如何编写一个 JS 开源库」的实践项目,同时也让我领悟了许多开源项目的工程管理概念、思路及方法,包括 版本管理、测试编写、自动版本发行、代码提交公约、持续构建(CI)、提交前测试、测试覆盖率及其报告 等,总体感觉受益匪浅,在此对教程原文[1]表示感谢,并决定将视频中的大量知识通过写作记录下来,在学习过程中我也加入了一些自己的思考,将视频内容转换成了更通俗的语言,没时间看视频的朋友兴许可以瞧瞧这里,对于简单的技能可以跳过,相关技能的章节已做了电梯,可以直达进行阅读。注意:在您阅读任何技能章节之前建议您先看看项目背景,它非常简单,但它对您理解后面的内容很有帮助。
它让我学会了以下 新技能(√):
部分技能章节还在更新中,敬请期待
如果您对这篇文章感兴趣,请前往我的 GitHub 项目主页阅读(https://github.com/DotHide/starwars-names),我将在那里做持续更新,如果您觉得本文有用,请您顺手赏颗⭐️,非常感谢~
最后,也许您会认为这里是 Ruby 社区,发一篇「如何编写一个 Gem 开源包」也许更有意义,我觉得倒也未必,其中的许多技能它提供了一种思路,至少是一些概念,您完全可以根据这些概念,再写一篇如何编写 Gem 包的文章来:)