• 极简idea下git操作(二)


    这篇讲些git的高级应用,如分支操作,版本回退,bug修复流程等

    新建分支

    一般开发中,我们不会直接改master分支,而是基于master分支建一个dev分支,我们可以通过点击下图按钮来基于master建新分支,需要注意的是master不能是本地当前分支,不然不会出菜单,并且代码要是最新的,不然新分支的代码也是老的

     合并分支

    等我们开发完功能,需要合并分支到master上了,我们先切换分支到master

    在选中dev,点击Merge into Current,就能把dev分支合并到master分支上了

    删除分支 

    删除分支很简单,选中要删除的分支点击Delete就行了,需要注意的是只能删除非当前分支,下图只是删了本地分支,要删远程分支是点击Remote Branches下面的分支再delete

     版本回退

    有时候我们提交错了代码,需要回退代码,该怎么操作呢?

    点击下面的Version Control-Log菜单可以看到提交的记录

     点击要回退的版本,比如我要回退到版本1,右击然后选择Reset Current Branch to Here,就能回退版本了,回退的时候会让你选Mixed或者Hard,Mixed的意思是版本回退了,但是本地的文件不会回退,Hard的意思是本地文件和版本都回退,这时如果你的版本2已经提交到远程仓库,push的时候就会有冲突,只能使用强制提交,强制提交的意思是本地仓库覆盖远程仓库

    git push -f origin dev

     

     修复线上bug流程

    当你开发完项目,成功上线后,就要开始下个阶段的开发了,这时线上突然来bug了,你当前分支刚开发了一半,又不能提交,该怎么处理呢?

    1.stash当前的工作,会把你当前分支上的改动保存到一个临时空间中

     2.基于master新建一个bugfix分支用来修复线上bug

    3.提交该分支,并合并到master分支上

    新建分支,合并分支上面都讲了,这里就不重复了,接下来重点来了,master上的bug,dev分支上也会存在,如何把这次提交也合并到dev分支上呢?

    我们切换到dev分支,在git的log里面找到修复bug的提交,选中cherry-pick就能把这次提交合并到dev上面去,当然也支持多选合并

     合并完成后选择unStash Changes就能恢复之前开发一半的代码了,恢复可能会有冲突,至于怎么解决上面都有说明,就不展开了

  • 相关阅读:
    生产环境一次Linux时钟同步无法正常同步的问题
    手写JS的new操作符的功能、手写实现JS中Object类的call函数、apply函数的功能
    揭露 FileSystem 引起的线上 JVM 内存溢出问题
    【CMake】浅谈使用 colcon build 时 CMakeLists 的配置方法-1.使用第三方开源库
    这款新一代开源免费的轻量级 SSH 终端,我太喜欢了
    Redis
    设计模式——16. 迭代器模式
    增减网络20220101
    serialVersionUID的重要性,及Idea自动生成 serialVersionUID的设置
    【AWS】如何用SSH连接aws上的EC2实例(虚拟机)?
  • 原文地址:https://blog.csdn.net/ting4937/article/details/126664876