git 打tag_git分支管理

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 20:51   1341   0

git分支管理没有绝对标准,但也不能随意切分。应该是根据具体的项目管理,来做分支管理。

常见分支命名及用途:

feature 开发分支,用于开发,开发环境对应的分支。

develop 测试分支,用于测试人员验证,测试/UAT环境对应的分支。

master 线上分支,用于发布,它保存的是最新的线上环境代码。

release 可以是分支也可以是标签(Tag),在gitlab中,有直接对应的Release功能,可以创建一个发布日志和Tag。

hotfix 补丁分支,用于修改线上环境bug。

以标准的项目(有明确的需求、明确的发布时间)为例,git分支就比较适合按需求做切分。

从develop中创建分支 feature 和 feature-1010 (这里1010表示此次需求发布日期),需要在此次版本中发布的需求在 feature-1010 分支中开发,不确定是否能发布的需求另建分支 feature-1010x1 (这里x1表示需求代号)。

feature子分支不是越少越好,也不是越细越好,根据需求提前评估好技术难度及开发时间很重要,有时间或技术风险的需求一定要独立建个feature子分支。

当一个需求开发完成,本地自测通过,即可提交到feature分支发布到开发环境测试。如果公司使用的是gitlab,建议在gitlab上提交分支合并请求,项目组长或主开发审核合并。gitlab的分支合并会生成一份文件变更记录,这份记录清晰明了,有了它也就告别了在commit中找记录的日子。

所有在开发环境测试通过的需求,申请合并到develop分支发布到测试/UAT环境做最终测试验证。全部验证通过,将develop分支合并到master分支,发布上线。打tag:release-20201010 (这里20201010表示发布日期/版本),gitlab中建议使用Release功能。

发布上线后,所有已发布的feature分支需要删除,只保留未发布的feature分支。等下个需求开始,重新从develop中创建feature分支。

若线上环境有bug,从master分支中切出hotfix分支,用于修复线上bug。修改完bug,将hotfix分支合并到develop分支,发布到测试/UAT环境测试验证。测试通过,将hotfix合并到master,发布上线。线上环境测试没问题,打release tag,删除hotfix分支。

f43be7f7a4b46b58045217538138efaf.png

以上的经验仅供参考,按需提取所需。每个项目情况都不一样,有很多项目是按人来做分支管理,也有按模块等等来做分支。磨合寻找适合自己项目和团队的方式,规范分支合并,避免或减少分支合并带来的破坏。

git命令参考:

所有变更添加到暂存区:

git add -A

将暂存区提交到本地仓库:

git commit -m 提交信息

将本地分支推送到远程服务器分支:

git push origin 分支名称

查看本地及所有分支(非远程最新分支信息):

git branch -a

获取更新远程分支信息:

git fetchgit fetch origin 分支名称

切换到本地其他分支:

git checkout 分支名称

创建并切换到本地分支 feature-1010,来源自远程分支 feature-1010:

git checkout -b feature-1010 origin/feature-1010

删除本地分支:

git branch -D 分支名称
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP