我们在日常工作中,如果线上的代码有错误,或者临时要紧急加一些东西,需要紧急hotfix(更新),所以我们要先在自己本地环境里创建 hotfix 分支,最终push到远端
git checkout master----- master分支想必大家都知道,一般线上的代码是从master推上去的(我组里就这样)git checkout -b hotfix---- 想必大家都很熟悉这指令,纯属走个流程git push -u origin hotfix----- (如果当前分支与多个主机存在追踪关系,则可以使用 -u 参数指定一个默认主机,这样后面就可以不加任何参数使用git push)由于你在hotfix已经改好一些紧急的错误,并且已经做完一些前奏的指令,那你就push代码到远端了
开发人员从远端更新被新建的分支,并切换到hotfix分支进行修复
git add .git stash---- 储存当前分支修改的内容(因为你切换到hotfix时一般在其他分支debug)git remote update---- 更新远端的所有分支(如果hotfix分支是别人创建的,你要更新一下远端)git checkout hotfix---- 在hotfix分支进行修复- 修复……
- 修复…………
- ……………………………………
git add .git commit -m 我最屌git pull---------- 修复完提交代码git checkout [原先你debug的分支]git stash pop------- 回复原本在你debug分支时所储存的内容(我一般 git stash pop ,git stash apply 很少)
这下面很重要,我组里的做法是这样,不知道你们是怎样操作的
- 管理人员将
hotfix分支合并至dev和master,并在master打上版本号,由于我们组里的代码寄存在 gitlab 上,我们可以在上面查找 git checkout devgit merge hotfixgit push origin dev------ hotfix分支合并在dev分支之后push远端git checkout mastergit merge hotfixgit push origin master------ hotfix分支合并在master分支之后push远端git tag [这次hotfix紧急修复做的版本号]--- 标记版本号方便可以在gitlab上查看内容(版本号可以纯数字,但不能有#)git push origin --tags----- 这段指令具体情况我也不清楚,反正master分支就要走这指令,其他的话和dev分支一样git branch -d hotfix---- 删除本地的hotfix分支(因为只是紧急修复才新建的分支,平时用不上)git push origin -d hotfix----- 远端分支也一并删除git branch---- 比如我本地的分支除了dev,master还有dragon分支等……git checkout dragongit rebase dev------ 把dev最新的代码,合并到dragon分支等……
结语
249620372
FRONT-END-JS前端交流QQ群(我们的宗旨是,为了加班,为了秃顶……,仰望大佬),希望小伙伴们加群一起学习