git合并分支的疑问

今天遇到一个奇怪的问题:

1、后端从master拉了三个分支。分别为dev、test、和stage。

2、研发1从dev拉了分支feature1,然后commit、commit、commit......。最后request merge到dev、test和stage。成功了。

3、研发2从dev拉了分支feature2,注意,feature2和feature1是同时拉的分支。分别开发不同的任务,然后研发2也开始commit,commit,commit。本来毫无交际,但有一天研发2必须要用到和研发1用到的同一个文件,但是研发1已经修改并提前merge了。这时候研发2提交merge,报了冲突。

4、接下来研发2要解决冲突。他拉取了dev更新的代码,里面自然包含研发1提交的东西。然后找到那个文件进行比较,然后删除掉自己的东西,加入研发1的东西,然后提交。显示冲突解决,可以merge。然后研发2 merge到了dev。

5、接下来,魔性的来了,研发2紧接着又修改了那个文件。把自己删掉的那几行代码加了进去,然后commit,接着又merge到了dev,显示成功。接着又分别merge到test和stage。竟然成功了。why?他们中间有什么猫腻?很奇怪。test和stage比着dev其实少了一次merge,但是结果却是相同的。

相关推荐
天若有情67311 小时前
【C++原创开源】formort.h:一行头文件,实现比JS模板字符串更爽的链式拼接+响应式变量
开发语言·javascript·c++·git·github·开源项目·模版字符串
海盗123412 小时前
在群晖NAS上使用Git Server
git
y小花12 小时前
git常用指令
git
华科大胡子12 小时前
开源项目 Git 贡献全流程拆解
git
极地星光12 小时前
工程中:Git 子模块(submodule) vs 直接依赖(源码/库/包管理器)
git
无限进步_13 小时前
【C++&string】大数相乘算法详解:从字符串加法到乘法实现
java·开发语言·c++·git·算法·github·visual studio
无限进步_14 小时前
【C++】验证回文字符串:高效算法详解与优化
java·开发语言·c++·git·算法·github·visual studio
无限进步_17 小时前
【C++】重载、重写和重定义的区别详解
c语言·开发语言·c++·ide·windows·git·github
历程里程碑17 小时前
1 . Git本地操作:版本控制 跨平台协作 仓库核心
java·开发语言·数据结构·c++·git·gitee·github
华科大胡子18 小时前
Git + 云原生
git