目前我有开发一个命令行自动化工具自己使用,用了快一年了挺稳定,挺提效的,仅针对测试环境,大概流程如下:
1 、自动根据保存的账号密码去禅道 /tapd/wecan 等拉取自己工作台的任务,select 选择你想修改的 需求 /bug/,根据模板按公司要求的规范自动命名创建 feature/bug 分支
2 、从 master 自动拉取创建分支
3 、编写代码
4 、一行命令达到如下效果:
① 再次更新 master 分支,push 当前分支到配置的代码仓库。
② 切换到配置的该项目的 dev 环境分支 EG:dev 分支
③ merge feature 分支到 dev 分支
④ 推送 dev 分支
⑤ 直接推到 gitlab 跑 CI 或根据配置的 jenkins 执行 CI
不用 git 那么多的命令,单个项目配置下个性化规则,或者按照全局规则执行,上面说了这么多其实就三个命令能跑完测试环境
xxx b/f:选择任务刘表创建分支
xxx c : 按公司规范提交代码 生成 commit 前缀
xxx p:pull /、push 、checkout {dev} 、merge 、push 、CI 等操作
已经存在的分支出现 bug ,再次修改,甚至只需要一行命令等待 3 分钟,就可以告诉 QA 去测试了,不用怕被其他事情打断忘记下一步的操作
请问大家这种都是怎么处理的,现在的趋势:微服务多,项目多,总干这些事情还是挺烦的,大家有用什么好的 developer tools 吗,或者相似的东西做的不错的推荐下吗,这个东西有完善下开源贡献出来的必要吗?
还蛮想做的,也算做点有意思的事情,如果有平替我也不做了,直接切过去
比如 feature:
可视化 集成其他自动化平台 等
1
lix7 2022-01-01 19:11:55 +08:00 1
第三点差不多,merge 然后交给 ci 干后边的事儿了
alias m2release-test='GIT_EDITOR=true CUR_BRANCH=$(git symbolic-ref --short -q HEAD) && git checkout release-test && git pull --rebase && git merge ${CUR_BRANCH} --no-edit && git push && git checkout ${CUR_BRANCH}' |
2
gengchun 2022-01-02 11:27:09 +08:00 1
我也有一个工具根据流程用模板生成代码和创建分支。基本上就是在调 GitPython 和 gitlab 的 API 。
我觉得很难做成可以推广的东西。要抽象的太多了。真要深入做,就是 Gitlab EE 或者阿里云的云效这种。对于小公司没有什么必要;对于大公司,那是公司的要不要提升开发效率的问题。要想合适,都是要具体落地时定制才行。 |