Git多人协同开发紧急修复线上bug操作指南

Git多人协同开发紧急修复线上bug操作指南

目录

使用场景

解决思路

操作流程

附录:Git使用的小技巧

Git命令别名

总结

使用场景

团队协同开发时,生产环境出现bug,需要紧急修复。

每位同学在本地开发,对应本地的dev分支,本地测试通过后提交到测试环境的dev分支。

测试环境有其他同学提交的代码,正在测试中,无法提交到生产环境的master分支。

以上情况导致我们不能在本地基于dev分支修复bug,因为会和其他同学提交的测试中的代码“撞车”,导致无法及时提及到生产环境。

这个时候如何正确使用Git管理代码呢?

解决思路

首先我们从master拉取最新代码到本次创建临时分支

在本地紧急修复代码,进行测试,测试无误后merge热修复代码到dev分支

本地merge测试分支和本地热修复分支的代码,有冲突解决冲突,提交代码(保证紧急更新的代码能及时被其他同学拉取到)

测试环境进行测试

测试无误后切换到master分支,merge紧急修复分支代码!(注意:是紧急修复分支的代码,不是测试dev分支代码,因为我们无法保证dev分支有无其他同学提交的未测试通过的代码!!!)

推送master分支merge热修复的代码到远程仓库,发布项目

如果需要的话添加tag标签,标记一下操作。

删除热修复分支,切换到dev分支,继续自己的本地开发。

操作流程

切换到master分支,拉取最新代码

git checkout master git pull

基于master分支创建热修复分支

git branch master_hotfix

切换到热修复分支

git checkout master_hotfix

本地开发,修复bug,测试

coding

本地测试通过后,merge热修复代码到dev分支

git checkout dev git merge master_hotfix

解决冲突,提交代码,测试环境进行测试

git push origin dev

测试通过后,merge热修复代码到master分支

git checkout master git merge master_hotfix

推送master代码到远程仓库

git push origin master

添加tag标记:git tag -a 版本号 -m "注释"

git tag -a 1.1.0 -m "紧急修复xxbug"

推送tag

git push --tag

删除热修复分支

git branch -d master_hotfix

切换到开发分支,进行本地开发

git checkout dev 附录:Git使用的小技巧 Git命令别名

首先找到Git的配置文件,比如Mac系统下

vim ~/.gitconfig

在配置文件中根据自己的使用习惯添加[alias],比如:

[alias] br = branch ci = commit cl = clone co = checkout cp = cherry-pick cfg = clone df = diff fh = fetch lg = "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative" mg = merge pl = pull plr = pull --rebase rb = rebase ph = push rmt = remote rst = reset sh = stash st = status sts = status -s sbm = submodule sw = show swf = "show --name-status" delb = "push origin --delete" delt = "push origin :" mb = merge-base

这样我们就能使用简化后的命令操作git了,进一步提高了效率。

比如:

git commit -m'注释'

可以简化为:

git ci -m'注释' 总结

团队协作是职业生涯中必须面对的问题,Git为我们代码的协作管理提供了强大的工具。 熟悉Git操作,拥抱团队协作。

以上就是Git多人协同开发紧急修复线上bug操作指南的详细内容,更多关于Git协同开发线上bug修复的资料请关注易知道(ezd.cc)其它相关文章!

推荐阅读