Skip to content

分支的使用

今天学习一下 Git 分支的使用。

提示

可以线上可视化学习 :在线学习 git 分支

分支的概念

分支(branch)是 Git 版本控制系统的一个重要概念。

这里我贴上一个常见的git分支模型:

git分支模型

  • main: 主分支,也就是我们平时所说的“master”分支,它是所有提交的最终汇总点。
  • develop: 开发分支,一般用来保存开发中的代码,稳定性比较高。
  • feature: 功能分支,用来开发新功能。
  • release: 发布分支,用来发布新版本。
  • hotfix: 热修复分支,用来修复线上版本的紧急 bug。

日常使用流程

  1. 初始化
    • 创建 main 分支
    • main 分支创建 develop 分支
  2. 功能开发
    • develop 分支创建 feature 分支
    • feature 分支上开发新功能
    • 完成开发后,合并 feature 分支到 develop 分支
  3. 发布
    • develop 分支创建 release 分支
    • release 分支上测试发布版本
    • 完成测试后,合并 release 分支到 main 分支和 develop 分支
  4. 紧急修复
    • main 分支创建 hotfix 分支
    • hotfix 分支上修复紧急 bug
    • 完成修复后,合并 hotfix 分支到 main 分支和 develop 分支
  5. 回滚
    • 如果 main 分支上有问题,可以回滚到上一个版本
    • 如果 develop 分支上有问题,可以回滚到上一个版本
  6. 持续集成
    • 完成开发后,可以设置 CI(持续集成)工具,自动构建和测试代码
    • 如果测试通过,可以合并 develop 分支到 main 分支

一次完整的分支操作

下面是一个完整的分支操作流程:

  1. 克隆远程仓库到本地
gitignore
git clone <remote_repository_url>
  1. 查看当前分支
gitignore
git branch
  1. main 分支创建 develop 个人分支
gitignore
git checkout -b develop main
  1. develop 分支创建 feature 分支
gitignore
git checkout -b feature develop
  1. feature 分支上开发新功能
  2. 完成开发后,合并 feature 分支到 develop 分支
gitignore
git checkout develop
git merge --no-ff feature
git branch -d feature
  1. develop 分支创建 release 分支
gitignore
git checkout -b release develop
  1. release 分支上测试发布版本
  2. 完成测试后,合并 release 分支到 main
gitignore
git checkout main
git merge --no-ff release
git tag -a v1.0.0 -m "release version 1.0.0"
git branch -d release

修复bug时常用的分支操作

  1. main 分支创建 hotfix 分支
gitignore
git checkout -b hotfix main
  1. hotfix 分支上修复紧急 bug
  2. 完成修复后,合并 hotfix 分支到 main 分支和 develop 分支
gitignore
git checkout develop
git merge --no-ff hotfix
git checkout main
git merge --no-ff hotfix
git branch -d hotfix

总结

Git 分支的学习与使用,是为了给后面团队开发、维护代码、CI/CD 等工作的展开打基础。

基于 MIT 许可发布