1. circleCI vs jenkins
指标 | circleCI | jenkins |
---|---|---|
CICD | 持续集成工具 | 持续集成和持续部署服务器 |
持续集成方式 | WEBUI | 管道方式自己写 |
安装 | 无困难,基于云 | 需要安装部署 |
软件测试支持 | 所有类型,包括Web/移动/桌面/容器 | 插件方式 |
易用性 | 轻松构建/测试和部署 | 需要专业知识 |
费用 | 免费版:2500个免费学分/周,一次运行一个作业 收费版:30美元/月,功能80倍并发 | 开源免费,功能不受限制 |
扩展性 | 缺失 | 扩展用插件功能 |
多作业 | 内置对并行性支持,通过项目设置实现 | 通过多线程支持多作业 |
作业构建 | 使用circle.yaml文件构建 | 使用存储在Jenkins服务器中的WebUI配置构建 |
调试 | 【通过SSH调试】功能来调试(容易) | 通过单击Job进行手动调试 |
更改 | 会在没警告情况下更改环境 | 只有在用户指示时才会更改 |
Docker镜像 | 不能缓存Docker镜像 | 可使用专用服务器缓存Docker镜像 |
安全性 | 没有Jenkins这样的安全性 | 使用Jenkins凭证和插件对机密进行加密 |
2. GitHub vs GitLab
指标 | GitHub(Free) | (Enterprise) | GitLab |
---|---|---|---|
用途 | 基于web的代码git代码仓库 | 同左 | 模仿GitHub |
共有仓库 | 没限制 | 同左 | 不提供 |
私有仓库 | 没限制 | 同左 | 提供 |
部署自动化 | 每月2000分钟,公开版免费 | 每月50000分钟,公开版免费 | 需要与其他中间件集成 |
打包功能 | 500M,可与私有版一起利用,公开版免费 | 50G,可与私有版一起利用,公开版免费 | 需要与其他中间件集成 |
代码审查 | 有 | 有 | 有 |
Pull requests | 有 | 有 | 有 |
保护分支 | 公开版 | 有 | 有 |
代码审查承认 | 公开版 | 有 | 有 |
草案pull request | 公开版 | 有 | ? |
分配pull request给多个人 | 公开版 | 有 | ? |
分配pull request的审查给多个人 | 公开版 | 有 | ? |
计划提醒 | 公开版 | 有 | ? |
代码审查分配的自动化 | 公开版 | 有 | ? |
公开版的协作 | 没限制 | 没限制 | 没限制 |
私有版的协作 | 没限制 | 同购买许可证数 | 没限制 |
issues | 有 | 有 | 有 |