Git分支的工作流程(Git协作第三篇)

注意:以下内容是我对"猴子都能懂的Git入门"的总结,来源地址:Simple Git tutorial for beginners | Nulab 如果大家想详细学习建议从官方文档学习

目录

分支的工作流程:

主分支:

功能分支:

发布分支:

修改分支:

开发分支:

Git分支工作流程的示例:

1.初始化仓库与分支:

2.创建开发分支:

3.开发新功能

4.修复bug

5.准备发布版本

6.发布到生产环境

7.紧急修改生产环境bug

8.查看分支状态


分支的工作流程:

  • 主分支
  • 功能分支
  • 发布分支
  • 修改分支
  • 开发分支

主分支:

在存储库中进行第一次提交时,默认情况下Git会自动创建一个主分支.随后的提交会在主分支下进行,直到你决定创建并切换到另一个分支.

驻留在主分支的代码库是生产就绪的.当最新的提交准备好用于特定版本时,它将被赋予一个发布标签.

功能分支:

当你开始开发新功能或者对现有功能进行重大修改时,你就该创建一个功能分支,功能分支通常是在开发分支之外并基于开发分支创建的,在功能开发的整个生命周期,该主题可以驻留在您的本地机器中,功能完成后,功能分支合并回主分支.

开发分支:

开发分支是Git团队协作开发的核心概念,通过隔离开发环境和整合代码变更,帮助团队高效管理复杂项目.你的团队应该始终保持开发分支的稳定,从这个分支创建新的分支,它可以在生产环境中运行.

当一些更改需要合并到开发分支时,创建一个功能分支来处理通常是一个好主意.

发布分支:

发布分支命名以前缀release-开头,通常当开发分支接近生产就绪(即开发分支积累了足够多的新功能)时,

1.它会在开发分支之外创建一个新的分支用来做修复测试发现的bug,版本号更新等操作

2.准备发布时,将发布分支与主分支合并,并为新创建的合并提交标志发布编号.

3.还应该将发布分支与开发分支合并,以便主分支和开发分支都可以从发布分支中接收发布分支修复的bug.

修改分支:

当您需要快速向生产代码库添加关键修复时,可以在主分支外创建一个修补分支.

命名:以前缀hotfix-开头

优点:允许快速发布补丁,并将更改与主分支合并,而无需等待下一个版本

(注意:修补分支也应该与开发分支合并)

Git分支工作流程的示例:

这里有一个快速示例,带你感受各种分支在实际生产中的应用:

1.初始化仓库与分支:

假设你已经创建了一个远程仓库my-project,并克隆到本地:

git clone https://github.com/your-username/my-project.git
cd my-project

2.创建开发分支:

git checkout -b develop  # 从main创建develop分支
git push origin develop  # 推送开发分支到远程

3.开发新功能

1.创建特性分支,比如开发者A负责开发新功能

git checkout -b feature/user-profile develop  # 从develop创建特性分支
# 编写代码...
git add .
git commit -m "Add user profile page"
git push origin feature/user-profile  # 推送到远程

2.提交Pull Request(PR)

  • 开发者A在GitHub上创建PR,将feature/user-profile合并到develop
  • 开发者B进行代码审查,确定无误后合并

4.修复bug

创建修复分支

git checkout -b fix/login-issue develop  # 从develop创建修复分支
# 修复代码...
git commit -m "Fix login validation error"
git push origin fix/login-issue

合并修复,创建PR将fix/login-issue合并到develop,并删除修复分支

5.准备发布版本

创建发布分支:

git checkout -b release/v1.0.0 develop  # 从develop创建发布分支
# 更新版本号、文档等...
git commit -m "Prepare release v1.0.0"
git push origin release/v1.0.0

最终测试,发现所有问题

git commit -m "Fix release issues"

6.发布到生产环境

1.合并到主分支

git checkout main
git merge --no-ff release/v1.0.0  # 合并发布分支到main
git tag v1.0.0  # 打标签标记版本
git push origin main
git push origin --tags  # 推送标签到远程

2.同步到开发分支

git checkout main
git merge --no-ff release/v1.0.0  # 合并发布分支到main
git tag v1.0.0  # 打标签标记版本
git push origin main
git push origin --tags  # 推送标签到远程

3.删除发布分支

git branch -d release/v1.0.0  # 删除本地发布分支
git push origin --delete release/v1.0.0  # 删除远程发布分支

7.紧急修改生产环境bug

1.创建热修复分支

git checkout -b hotfix/v1.0.1 main  # 从main创建热修复分支
# 修复代码...
git commit -m "Hotfix: critical bug in payment system"

2.合并到主分支

git checkout main
git merge --no-ff hotfix/v1.0.1
git tag v1.0.1
git push origin main
git push origin --tags

3.同步到开发分支

git checkout develop
git merge --no-ff hotfix/v1.0.1
git push origin develop

4.删除热修复分支

git branch -d hotfix/v1.0.1
git push origin --delete hotfix/v1.0.1

8.查看分支状态

git branch -a  # 查看所有本地和远程分支
git log --oneline --graph --decorate --all  # 可视化分支历史

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值