在使用云效Codeup之前我们曾使用过TAPD里的腾讯工蜂、GitLab以及自建的SVN代码库。但因为随着业务发展、团队人员扩张,团队人员的任务、效率管理问题也逐步暴露,经过对比后云效的项目协作、CodeUp与流水线可较好的解决上述问题,并且操作界面也清晰易懂,这也是我们最终选择云效的原因。
回到Codeup本身,大致从以下几点讲述:
1、代码托管
Codeup的代码组通过为不同项目设置代码组,可以帮助管理者方便的管理项目以及各项目成员的权限。除此之外作为本土产品,稳定性和速度基本不是问题。只要你的网速够快,Codeup的下载速度就能够满足你的需求。容量方面,作为中小企业,个人觉得官方提供的套餐也基本够用。
2、代码评审
通过设置保护分支,并为保护分支设置推送、合并规则,可以有效的保护线上稳定版本的代码不受污染。创建合并请求后的代码评审界面清晰的将前后两个版本的文件内容展示出来,方便评审人员进行评审。还可以针对问题代码进行评论,并支持操作标记问题代码是否已经解决,防止遗漏。
代码评审通过后的合并操作通常会配置webhooks到流水线中,一旦代码合并后,对应分支的流水线就会立即执行,再配合流水线的人工卡点以及机器部署便可以做成一套完整的发布流程。
3、代码安全
- IP白名单
IP白名单是较为常用的安全手段之一,顾名思义只有访问者的IP在白名单内才可以访问代码库,否则将会报白名单错误。用户只需将企业的出口IP放到白名单内即可完成配置,简单容易上手。
这里需要提个小建议:
目前白名单配置是将所有分类的白名单都放在一起录入的,当保存成功后页面会自动刷新,此时刚输入的IP并不一定排在输入框的最后,需要用户自己使用浏览器的搜索查看;另外,通常在添加IP白名单时个人一般会对IP做分组,比如哪些是ECS的,哪些是属于企业出口IP等,若没有分组当想删除某一类的IP时,只能逐个手动搜索后删除,若有分组功能则可以直接找到对应IP删除或者整个分组删除。
- 代码备份
如果对代码存储要求较高的可以使用代码备份,并可以制定备份计划。备份的代码可以直接同步到用户的OSS中,使用还是比较方便的。
如果在没有备份的情况下误删了代码库,Codeup也为用户提供了15天的保留期,方便用户从回收站追回。
- 仓库加密
就类似于用户登录时用户名、密码加密一样,Codeup也提供仓库加密功能,可根据用户需求对不同代码库修改加密设置。
4、代码导入
新建代码库时Codeup提供了代码导入功能(如上图),可方便的将其他工具上的代码迁移过来,根据提示界面操作步骤也比较简单易懂。
5、其他
代码检测和代码洞察之前简单的用过,在每个代码库中提供了代码提交、代码评审的报表,可以查看各成员的代码情况。在企业设置>安全总览中提供的安全评分可帮助用户检查代码中的漏洞,及时洞察风险。
在实际使用过程中,个人对此部分的使用频率不是很高,这里不做赘述。
总结:
相较于其他工具,Codeup有以下优点:
- 易上手、性价比高,比较适合中小型公司
- 本土产品,稳定性高
- 安全性较高,相关检查功能也相对齐全
- 和阿里云产品可以无缝衔接,减少运维成本
- 账号以及对应权限添加的流程简单
缺点:
- 代码查看及历史版本大文件在页面的展示形式不够友好
- 版本查看的翻页功能每次点开具体文件后后退都会回到第一页,很不方便,建议优化
- 白名单建议做分组
总的来讲,Codeup在功能和易用性上都有较出色的表现,若配合使用阿里云其他产品可以较大降低运维的难度、减少成本。