广告位联系
返回顶部
分享到

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

相关技巧 来源:互联网 作者:酷站 发布时间:2022-06-25 21:59:09 人浏览
摘要

使用场景 团队协同开发时,生产环境出现bug,需要紧急修复。 每位同学在本地开发,对应本地的dev分支,本地测试通过后提交到测试环境的dev分支。 测试环境有其他同学提交的代码,

使用场景

  • 团队协同开发时,生产环境出现bug,需要紧急修复。
  • 每位同学在本地开发,对应本地的dev分支,本地测试通过后提交到测试环境的dev分支。
  • 测试环境有其他同学提交的代码,正在测试中,无法提交到生产环境的master分支。
  • 以上情况导致我们不能在本地基于dev分支修复bug,因为会和其他同学提交的测试中的代码“撞车”,导致无法及时提及到生产环境。
  • 这个时候如何正确使用Git管理代码呢?

解决思路

  • 首先我们从master拉取最新代码到本次创建临时分支
  • 在本地紧急修复代码,进行测试,测试无误后merge热修复代码到dev分支
  • 本地merge测试分支和本地热修复分支的代码,有冲突解决冲突,提交代码(保证紧急更新的代码能及时被其他同学拉取到)
  • 测试环境进行测试
  • 测试无误后切换到master分支,merge紧急修复分支代码!(注意:是紧急修复分支的代码,不是测试dev分支代码,因为我们无法保证dev分支有无其他同学提交的未测试通过的代码!!!)
  • 推送master分支merge热修复的代码到远程仓库,发布项目
  • 如果需要的话添加tag标签,标记一下操作。
  • 删除热修复分支,切换到dev分支,继续自己的本地开发。

操作流程

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

1

2

git checkout master

git pull

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

1

git branch master_hotfix

  • 切换到热修复分支

1

git checkout master_hotfix

  • 本地开发,修复bug,测试

1

coding

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

1

2

git checkout dev

git merge master_hotfix

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

1

git push origin dev

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

1

2

git checkout master

git merge master_hotfix

  • 推送master代码到远程仓库

1

git push origin master

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

1

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

  • 推送tag

1

git push --tag

  • 删除热修复分支

1

git branch -d master_hotfix

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

1

git checkout dev

附录:Git使用的小技巧

Git命令别名

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

1

vim ~/.gitconfig

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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

[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了,进一步提高了效率。

比如:

1

git commit -m'注释'

可以简化为:

1

git ci -m'注释'

总结

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


版权声明 : 本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务和不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权, 违法违规的内容, 请发送邮件至2530232025#qq.cn(#换@)举报,一经查实,本站将立刻删除。
原文链接 : https://juejin.cn/post/7018771333173477383
相关文章
  • 本站所有内容来源于互联网或用户自行发布,本站仅提供信息存储空间服务,不拥有版权,不承担法律责任。如有侵犯您的权益,请您联系站长处理!
  • Copyright © 2017-2022 F11.CN All Rights Reserved. F11站长开发者网 版权所有 | 苏ICP备2022031554号-1 | 51LA统计