1、场景

错误的将不该和并的分支合并了上去

2、例

test为正在测试的新功能分支,操作人错误的将test分支合并到了主分支master,此时希望将test的分支提交回滚

3、策略

  1. 撤销此次的提交 reset
  2. 提交一次新的提交反向撤销本次提交 revert

4、问题

  1. reset

可能因在发现之前,mater上已执行了多次的提交,如下所示:

. . . commit1 commit2 commit3 testCommit commit4 commit5 ...

此时若想撤销此次提交,那么我们需要将提交回滚到testCommit 之前的状态(commit3),reset操作将完全舍弃testCommit至最后的所有提交,若想保留之后的提交,需重新合并

2. revert

revert操作并不会撤销原来的提交操作(即testCommit 提交依然是一个有效的提交),其将创建一个新的提交,其内容将反向撤销testCommit 所提交的内容,但是,此时git的head是一直往前的,也就是说,再对test 分支向master分支提交将没有任何内容可以进行提交,提示此时的master已经是最新的代码(虽然此时test分支的内容在master上完全没有),那么这个时候只需要对revert的操作再进行一次revert操作,即可以将原来revert的内容复原,在此基础上,重新合并新的内容即可

revert与reset相关推荐

  1. git revert和reset区别

    1.在github上建立测试项目并克隆到本地 2.本地中新建两个文本文件 3.将a.txt commit并push到远程仓库 执行 git add a.txt, git commit -m " ...

  2. git中的revert和reset

    假如我们对之前提交的代码不满意,我们就能使用git reset 或者git revert.reset.revert都有恢复之意,在git中他们的差别是什么呢? 在这之前,我们在复习一下git的基本知识 ...

  3. Git-如何回滚代码 revert和reset

    1.git revert和git reset的区别 git revert 是撤销某次操作,此次操作之前或之后的commit都会被保留 git reset 是撤销某次提交,此次之后的修改都会被退回到暂存 ...

  4. Git撤销修改场景及对应指令(checkout、reset、revert)详解

    场景一:撤销工作区的修改(未执行git add) 指令:git checkout [目录或文件名] 实例: 1.修改了test.txt文档,git status 会出现如下提示: 2.git chec ...

  5. git中reset与revert的使用

    最近用github做我的博客,有些时候会设置错误需要用撤回操作,这时就用到git revert与reset reset(版本撤回) 格式 git reset [-q] [<commit>] ...

  6. idea回退操作reset、revert

    在团队合伙开发的时候,我们有时会出现错误提交的情况,或者新上线的功能有bug,需要进行回退. idea工具就为我们提供了已下几个操作 回退(reset).反做(revert) RESET命令 操作是对 ...

  7. git reset revert rebase 区别

    最近合并他人代码,因为代码是从git代码库之外来的,于是出了各种问题.于是又翻看了git教程.这里推荐两篇: Git教程 - 廖雪峰的官方网站 非常通俗易懂,教了最基本的,十分实用. ###Git 基 ...

  8. git reset --hard HEAD与git revert HEAD区别(简单明了!)

    一.reset reset命令把当前分支指向另一个位置,并且相应的变动工作区和暂存区. 二.revert git revert用一个新提交来消除一个历史提交所做的任何修改. git revert 撤销 ...

  9. Git之深入解析工作流程、常用命令与Reset模式分析

    一.Git 工作流程 ① 工作区域 四个区: Workspace:工作区 Index / Stage:暂存区(和 git stash 命令暂存的地方不一样) Repository:仓库区(或本地仓库) ...

最新文章

  1. 把握每天的第一个钟头
  2. 数据结构的映像方法(数据元素的机内表示)
  3. Linux系统中文件^M乱码解决
  4. 接收不到其他机器发来的报文_大厂真实案例:线上四台机器同一时间全部 OOM......
  5. ubuntu 修改ssh登陆端口
  6. python自然语言处理库_Python自然语言处理工具库(含中文处理)
  7. 【优雅代码】深入浅出 妙用Javascript中apply、call、bind
  8. 震惊!程序员要放弃 Python 了!?发生了啥?
  9. 蓝桥杯第七届决赛之---阶乘位数
  10. 百度云服务器安装git并做远程仓库
  11. 自己写一个java.lang.reflect.Proxy代理的实现
  12. Python3 正则表达式学习
  13. OpenCV项目实战
  14. 微信hook,易语言微信助手功能简单介绍
  15. VS隐藏菜单插件 Hide Main Menu
  16. dell r730服务器开启虚拟化,r730服务器不能开启虚拟化(dell开启cpu虚拟化)
  17. python爬虫返回文本为乱码的解决方法
  18. 关于小区物业自治方案的探讨
  19. TAZ生成实践(Intel芯片Mac Python 3.7.9)
  20. 未来人类将被AI取代?一文读懂人工智能类型与发展阶段

热门文章

  1. LCD1602液晶显示屏的字符显示
  2. 昌平区有什么可以玩的地
  3. python 搜索 PDF文件 内容
  4. 电视android升级啥意思,索尼智能电视Android电视机升级教程
  5. 前端性能优化——写给网页设计师和前端工程师看的
  6. 【javaScript 的 proxy】
  7. 机器学习:SVM支持向量机理解
  8. (17)雅思屠鸭第十七天:小作文完整攻略
  9. 【XSY2515】管道(pipe)(最小生成树+倍增lca)
  10. AHB总线笔记(一)