前言
🍃 你好啊,我是你的人类朋友!
在我参与的一个项目中,我的同事创建了一些 hotfix 分支,用于修复一些紧急问题。
但是我修复一些 bug 的时候,一般都是直接在我所在的 dev 分支上修复,然后合并到 master 分支。
今天就来学习一下 hotfix 分支的使用,重点会放在使用流程上,内容会比较简短~
正文
hotfix 的中文意思是热修复或热补丁
hotfix 分支主要用于快速修复线上环境的紧急 bug。
它从 master 分支创建,修复完成后,需要同时合并到 master 和 dev 分支,确保修复的代码在后续开发中也得到应用。
基本使用流程如下:
-
从 master 分支创建 hotfix 分支 假设当前在 master 分支,执行以下命令创建并切换到新的 hotfix 分支:
bashgit checkout -b hotfix-xxx
分支名通常以
hotfix-
开头,便于识别。 -
在 hotfix 分支上修复 bug 进行必要的代码修改,修复问题,并提交:
bashgit add . git commit -m "修复了某个紧急问题"
-
将 hotfix 分支合并到 master 分支 切换回 master 分支,合并 hotfix 分支:
bashgit checkout master git merge hotfix-xxx
合并后,master 分支就包含了这次修复。
-
将 hotfix 分支合并到 dev 分支 同样地,切换至 dev 分支并合并 hotfix 分支,确保修复内容在开发分支中也存在:
bashgit checkout dev git merge hotfix-xxx
-
删除 hotfix 分支 修复完成并合并后,可以删除本地的 hotfix 分支:
bashgit branch -d hotfix-xxx
如果已推送到远程,也可删除远程分支:
bashgit push origin --delete hotfix-xxx
整个过程简单清晰,核心在于从 master 创建,修复后同时合并到 master 和 dev,避免后续开发遗漏该修复。
补充知识:🤔 这种规范是谁发明的?
这种分支管理规范主要来源于 Vincent Driessen 在 2010 年提出的 Git Flow 模型。
他在博客《A Successful Git Branching Model》中系统性地阐述了包括 hotfix 分支在内的这套工作流程,后来成为最广泛使用的 Git 分支管理规范之一。
文章里有句作者后续补充的笔记分享下:
To conclude, always remember that panaceas don't exist. Consider your own context. Don't be hating. Decide for yourself.
最后
好啦,到这里 hotfix 分支的使用就介绍完了。
通过以上流程,我们可以高效地处理线上紧急问题,同时保持代码库的整洁与一致。
开始尝试在项目中使用 hotfix 分支吧,它会让你的工作流更加规范。
下次见!