从三个方面复盘:
- git开发流程
- 关于部署情况了解
- 关于代码问题排查
1. git开发流程
目前共有三个环境:本地环境、公司开发环境和公司测试环境
- 开发之前
- 需要先进行详细分析,需要添加哪些功能,修复哪些特性,这个必须要明确;
- 需要对代码整体情况了解,自己开发的模块在整体中什么位置,会牵连到哪些模块,这些代码的变化会给整体带来什么影响;
- 编写好详细的测试用例,对接口的输入和输出进行设计,对其中的一些特殊情况进行测试用例的编写;
- 开发阶段
- 将主分支更新到最新,然后从主分支新建立一个feature分支,在这个分支上进行代码的开发;
- 在开发过程中,可能有人把新的分支提交到主分支上,在每天写代码之前,要先pull最新的master分支,并且将其合并到自己的分支上面,再进行开发;
- 菜鸟阶段,在本地边开发边调试,设置断点,及时了解代码情况;
- 自测阶段
- 当代码开发完成后,需要将该分支上的代码部署到dev环境中,这时候要注意dev的环境,保持其版本一致;
- 可能多人协同开发,都要用到dev环境,当设计到几个人开发同一个系统时,要相互协调测试,最好每次测试之前,发出通告;
- 合并主分支
- 该分支的代码在dev环境中测试没有问题之后,将其合并到master分支
- 合并之前,需要先提PR,请团队中关键人员进行代码的审核,对提出问题的代码要及时更改,再次审核,这里设计到多个人员,如果其中一部分人通过后,到最后一个人提出较大问题,则要修改再让所有人审核,可以先让最有经验的人员审核,其审核无误之后再让其他人审核。
- 当审核通过后,就需要将代码部署到master环境当中,这个时候要提醒运维人员,让其部署到测试环境。测试环境和开发环境是隔离的,开发人员可以在开发环境中更改,但不能随意更改测试环境。
- feature合并之后,将feature删除,只保留一条记录
2. 关于代码部署情况了解
在自测阶段,需要将代码部署到公司的开发环境当中,只有确定代码已经部署成功,再进行自测才是有效的。确定代码部署成功可以进入dev所在的服务器,用ps -ef | grep sevice
来查看代码的运行情况,其会显示该服务部署的时间,看其是否和自己部署的时间一致,如果一致,则部署成功。当然,也可以从日志中查看服务启动情况,看其启动的日期。
3. 关于代码问题排查
- 目前常用到https,在windows上用wireshark无法查看包的具体内容,这里可以用浏览器的开发者模式中的network来进行查看发送的请求。
- 如果测试或使用过程中出现异常,除了逻辑上的排查外,主要是通过日志来查看代码出现的问题,如果日志不能够找到原因,最后在后端抓包来进行问题的排查。这里需要对linux中常用的命令非常的熟悉,如:
tcpdump
来进行抓包,alias
来实现快捷键,tail -n number
来查看日志内容,vim
中的查找字符串,curl
来模拟发送数据包