hxz
发布于 2023-11-26 / 72 阅读
0

【git】自动化项目的代码分支管理

背景

现如今的研发团队中,早已形成一套成熟的代码分支管理规范和体系。如果离开代码分支管理,会有以下这些痛点问题:

  1. 版本控制困难,难以追踪特定版本的代码。

  2. 并行开发困难,多个开发者可能在同一份代码上进行修改,导致冲突和数据丢失。

  3. 代码合并复杂且容易出错。

  4. 代码审查困难,难以保证代码质量。

  5. 发布管理混乱,难以满足不同用户的需求。

作为测试人员,我们在管理自动化代码时,同样离不开代码分支管理。

其次,我们需要了解代码分支管理平台

在线代码托管平台有:如GitHub、GitLab、Bitbucket,这些平台不仅提供代码仓库的托管服务,还支持代码审查、项目管理、CI/CD等集成服务。

基于代码托管平台,团队内部代码可以通过建立私有仓库存储在平台上,测试leader对团队成员开放对应权限,便于团队协作、维护代码。

下图是测试人员进行代码分支管理的简化流程:

操作举例

在终端本地,我们与远程仓库交互的具体流程如下:

在本地克隆代码仓库

# git clone https://github.com/huangxiaozhong/unittestHxz.git

或者本地已有仓库的情况下,获取最新的master分支下的代码

# git checkout master

# git pull origin master

新建代码分支并切换

# git checkout -b XXX(分支名)

 提交代码到release分支

# git checkout release_v1.0

# git add . (指所有改动内容)

# git commit -m “具体日期+提交代码”

# git push origin release_v1.0

了解了上述流程,我们必须熟练掌握常用的git命令

git命令

git checkout XX  切换分支
git checkout -b XXXX 新建XXXX分支并切换
git add .  将需要上传的代码放在暂存区
git commit -m "XXX"  将暂存区的代码提交到当前分支上
git push origin XXX  将当前分支提交到远程XXX分支上
git clone XXXX  从XXXX分支上克隆代码到本地
git branch -a  查看所有本地分支
git status  查看当前仓库状态
git pull origin XXX 从XXX分支拉取最新代码

除此之外,团队内部还需要注意规范化代码分支管理,设置分支管理要求

分支管理要求

1. 一个仓库对应一个自动化项目

2. 每次操作分支时,先git pull,避免之后提交代码导致的代码冲突

3. 避免直接在master更新代码,需要新增子分支来提交代码再合并

4. 如果作为测试主管,要控制代码合并的权限,每次有合并需求时必须review

5. 只有确定具体业务版本上线后,才允许master分支合并