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

 更新时间:2022年06月25日 11:55:00   作者:王中阳Go  
这篇文章主要为大家介绍了Git多人协同开发紧急修复线上bug操作指南,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

使用场景

  • 团队协同开发时,生产环境出现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修复的资料请关注脚本之家其它相关文章!

相关文章

  • idea中的project、module、artifact的具体使用

    idea中的project、module、artifact的具体使用

    本文主要介绍了idea中的project、module、artifact的具体使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • git stash使用场景及常见方法详解

    git stash使用场景及常见方法详解

    这篇文章主要为大家介绍了git stash使用场景及常见方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • 一文详解VSCode安装配置使用(最新版超详细保姆级含插件)

    一文详解VSCode安装配置使用(最新版超详细保姆级含插件)

    安装VScode就很简单了,一路NEXT就可以了,重点是配置使用以及插件推荐,这篇文章主要给大家介绍了关于VSCode安装配置使用的相关资料,本文是最新版超详细保姆级含插件,需要的朋友可以参考下
    2023-05-05
  • 浏览器缓存知识小结及应用分析

    浏览器缓存知识小结及应用分析

    了解浏览器的缓存命中原理,是开发web应用的基础,本文着眼于此,学习浏览器缓存的相关知识,总结缓存避免和缓存管理的方法,结合具体的场景说明缓存的相关问题。希望能对有需要的人有所帮助
    2017-03-03
  • 45个GIT经典操作场景使用详解

    45个GIT经典操作场景使用详解

    这篇文章主要介绍了45个GIT经典操作场景使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • gitee命令行上传项目的步骤详解

    gitee命令行上传项目的步骤详解

    这篇文章主要介绍了gitee命令行上传项目的步骤详解,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • 使用.gitignore文件简化Git仓库管理

    使用.gitignore文件简化Git仓库管理

    .gitignore文件用于指定在git中应该被忽略的文件或目录,前端的node_modules目录包含大量文件,如果将其添加到版本管理系统中,会使仓库变得庞大,不利于仓库的管理,本文介绍了使用.gitignore文件来简化你的Git仓库管理
    2023-10-10
  • 高性能WEB开发 JS、CSS的合并、压缩、缓存管理

    高性能WEB开发 JS、CSS的合并、压缩、缓存管理

    本篇文章主要讨论下目前JS,CSS 合并、压缩、缓存管理存在的一些问题,然后分享下自己项目中用到的1个处理方案,并提供1个实例下载。
    2010-05-05
  • Spark中的数据读取保存和累加器实例详解

    Spark中的数据读取保存和累加器实例详解

    这篇文章主要为大家介绍了Spark中的数据读取保存和累加器实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-11-11
  • Git分支合并冲突解决的方法实现

    Git分支合并冲突解决的方法实现

    这篇文章主要介绍了Git分支合并冲突解决的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07

最新评论