一、持续集成的作用
优点:
·快速发现错误
·防止分支大幅偏离主干
核心措施是,代码集成到主干之前,必须通 过自动化测试。只要有一个测试用例失败, 就不能集成。
二、Github 最流行的 CI
Travis CI
Circle CI
三、接入 Travis CI
1. https://travis-ci.org/ 使用 GitHub 账号登录
2. 在 https://travis-ci.org/account/repositories 为项目开启
3. 项目根目录下新增 .travis.yml
travis.yml 文件内容
language:nodes_js
sduo:false
cache
apt:true
directories:
-node_modules
node_js: stable //版本
install
安装项目依赖
script
运行测试用例
四、发布到 npm
添加用户: npm adduser
升级版本
升级补丁版本号:npm version patch
升级小版本号:npm version minor
升级大版本号:npm version major
发布版本:npm publish
五、Git 规范和 Changelog 生成
良好的 Git commit 规范优势:
·加快 Code Review 的流程
·根据 Git Commit 的元数据生成 Changelog
·后续维护者可以知道 Feature 被修改的原因
提交时类型选择提示,commitize
不符合格式的日志拒绝提交的保障机制,validate-commit-msg工具+客户端、gitlab serverhook做
统一changelog 文档信息生成,使用conventional-changelog-cli工具
angular的git commit日志规范作为基本规范:
提交类型为:
feat新增feature、fix修复bug、docs仅仅修改文档如readme合changelog等、style仅仅修改空格缩进逗号等、refactor代码重构没有加新功能或者修复bug、perf优化相关性能体验、test测试用例单元测试集成测试等、chore改变构建流程增加依赖库工具等、revert回滚到上一个版本等
提交信息分为连部分,标题(首字母不大写,末尾不要标点)、主内容。
六、本地开发阶段增加 precommit 钩子
安装 husky
npm install husky --save-dev
通过 commitmsg 钩子校验信息
"scripts": {
"commitmsg": "validate-commit-msg",
"changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0" },
"devDependencies": {
"validate-commit-msg": "^2.11.1",
"conventional-changelog-cli": "^1.2.0",
"husky": "^0.13.1"
}
持续集成作用与工具
最新推荐文章于 2023-03-23 23:20:24 发布