最近发生在自己身上的一件矬事儿,一不小心把matser上别人的代码给冲掉了,事后追溯了下原因。

  1、准备三个分支,分别从master拉取 realease/v1.0分支 和 realease/bugfix 分支,再从realease/v1.0 分支拉取feature分支,如下:

  2、切换到realease/bugfix分支,分别对其中两个文件进行修改,并且commit push 两次

  3、将realease/bugfix分支合并到 master

  4、将master 合并到 realease/v1.0上,此时realease/v1.0代码和release/bugfix分支是一致的。

  5、修改feature/v1/0 中的DemoController文件,commit push

  6、将master 合并到feature/v1.0上,此时会提示冲突,解决冲突后,此时feature/v1.0会有一些待commit的合并文件,而此时我又天真的revert了一下,恢复到feature/v1.0第一次提交后的状态

  7、继续修改其它文件,完成feature/v1.0的第二次commit ,然后push

  8、将远程feature/1.0的代码往realease/1.0合并,因为两者都刚刚把master往本分支合过代码,所以不会冲突,此时realeas/v1.0分支的代码已经和feature/1.0保持一直

  9、而后realease/1.0开发完成,将realease/1.0的代码合并到mater,同样此时也不会冲突,最后master中的代码顺利变成了跟feature/1.0一致,而整个merge过程中并无冲突,所以我也没察觉到已经将release/bugfix上的代码冲掉。

记一次git merge 事故的更多相关文章

  1. 记一次git amend事故处理方案

    一.问题回顾 问题是git commit --amend 引起的. 一条commit已经push到远端develop了,但是后来又在这条commit上进行了amend操作,导致这条commit的哈希码 ...

  2. git rebase vs git merge详解

    https://medium.com/@porteneuve/getting-solid-at-git-rebase-vs-merge-4fa1a48c53aa#.std3ddz0g 请参考另外一篇文 ...

  3. 聊下git merge --squash

    你经常会面临着将dev分支或者很多零散的分支merge到一个公共release分支里. 但是有一种情况是需要你处理的,就是在你的dev的分支里有很多commit记录.而这些commit是无需在rele ...

  4. 分支合并git checkout adview git merge adview3

    分支合并 git checkout adview git merge adview3

  5. [git]merge和rebase的区别

    前言 我从用git就一直用rebase,但是新的公司需要用merge命令,我不是很明白,所以查了一些资料,总结了下面的内容,如果有什么不妥的地方,还望指正,我一定虚心学习. merge和rebase ...

  6. git merge 和 git rebase 小结

    Git merge是用来合并两个分支的. git merge b # 将b分支合并到当前分支 同样 git rebase b,也是把 b分支合并到当前分支 ---------------------- ...

  7. Git merge 与 git rebase的区别

    Git merge的用法: git merge Dev // Dev表示某分支,表示在当前分支合并Dev分支 git merge -m  "Merge from Dev"  Dev ...

  8. git merge 和 rebase 区别

    git pull  超级不推荐使用git pull 有坑,谨慎使用,pull底层是merge git pull 是 git fetch + git merge FETCH_HEAD 的缩写.所以,默认 ...

  9. git merge之squash

    看CM源码时,发现历史记录里有很多squash,于是google了解了一下. Git相对于CVS和SVN的一大好处就是merge非常方便,只要指出branch的名字就好了,如: 1 2 3 4 5 $ ...

随机推荐

  1. 浮动,HTML大知识

    标准文档流: 指元素根据块级元素和行内元素的特性,按照从上到下,从左到右的顺序依次排列,这种方式是默认的排列方式 一.块级元素和内联元素 块级元素内容独占一行,内联元素内容自动拼接 display属性 ...

  2. SpringBoot:关于默认连接池Hikari的源码剖析

    1.起因 因为这两天在给公司的一个项目升级SpringBoot版本,遇到了一些坑,升级项目版本:SpringBoot1.5.x到SpringBoot2.0.x 今天早上双库操作遇到一个问题:jdbcU ...

  3. 配置Always On AG

    1.准备测试环境的服务器 在 Always On AG 中如果需要自动 Failover 至少需要集群中有 3 台服务器,但是我只是测试功能,因此只使用了两台服务器.并且本文不涉及任何 Pacemak ...

  4. Fiddler导出JMX文件配置

    (1)安装fiddler jmeter(免安装) 注意事项!fiddler版本必须在v4.6.2以上(插件支持的是4.6版本), jmeter版本最好在v3.0以上,版本太低容易导致导出不成功 这里我 ...

  5. ZooKeeper和ZAB协议

    前言 ZooKeeper是一个提供高可用,一致性,高性能的保证读写顺序的存储系统.ZAB协议为ZooKeeper专门设计的一种支持数据一致性的原子广播协议. 演示环境 $ uname -a Darwi ...

  6. 蓝绿部署、A/B测试以及灰度发布(金丝雀发布)

    过去的10多年里,很多大公司都在使用蓝绿部署,安全.可靠是这种部署方式的特点.蓝绿部署虽然算不上”Sliver Bullet“,但确实很实用.在有关于“微服务”.“DevOps”.“Cloud-nat ...

  7. pip的安装

    1.get-pip.py安装 (官方)https://pip.pypa.io/en/stable/installing/#installing-with-get-pip-py $wget https: ...

  8. odoo开发笔记--定时任务源码分析

    场景描述: 处理思路: 参考文章: 定时任务相关: https://www.jianshu.com/p/ad48239f84d6 https://blog.csdn.net/M0relia/artic ...

  9. Java3d 案例程序

    今天偶尔翻出了很久以前写的java3d程序,很怀念曾经探索java3d解析.渲染ifc数据的日子 package com.vfsd.test0621; import java.applet.Apple ...

  10. [Bayes] MCMC (Markov Chain Monte Carlo)

    不错的文章:LDA-math-MCMC 和 Gibbs Sampling 可作为精进MCMC抽样方法的学习材料. 简单概率分布的模拟 Box-Muller变换原理详解 本质上来说,计算机只能生产符合均 ...