Git合并提交(不做任何更改)将删除对文件的编辑

Git合并提交(不做任何更改)将删除对文件的编辑,git,version-control,merge,git-merge,Git,Version Control,Merge,Git Merge,我和一位同事正在进行一个使用git进行源代码管理的项目。今天下午,我对一个特定的文件进行了几次提交,MyFile.txt。我把我的更改推到我们的主分支(trunk),我的同事不久就合并了他的(不相关的)更改。这是一个视觉: 在我的同事进行合并提交(上面的提交标记为1.0.1834)之后,我所有的更改都消失了 我切换回我的提交(标记为1.0.1833),以验证我是否正确提交了更改;我有-MyFile.txt有那天下午的所有更改。但是,如果我切换到同事的合并提交(标记为1.0.1834),MyFi

我和一位同事正在进行一个使用git进行源代码管理的项目。今天下午,我对一个特定的文件进行了几次提交,
MyFile.txt
。我把我的更改推到我们的主分支(
trunk
),我的同事不久就合并了他的(不相关的)更改。这是一个视觉:

在我的同事进行合并提交(上面的提交标记为
1.0.1834
)之后,我所有的更改都消失了

我切换回我的提交(标记为
1.0.1833
),以验证我是否正确提交了更改;我有-
MyFile.txt
有那天下午的所有更改。但是,如果我切换到同事的合并提交(标记为
1.0.1834
),
MyFile.txt
处于原始状态,没有任何更改

我的同事的合并提交(
1.0.1834
)不包含任何更改-
gitk
中的“Diff”窗口为空。下面是GitLab站点提交的另一个视图:


发生了什么事?我的变化到哪里去了?我怎样才能防止将来发生这种情况呢?

如果您的合作伙伴做了一次尝试,这种情况可能会发生

结果合并提交将与他以前的提交头相同

这是我们的合并策略:

合并的结果树始终是当前分支头的树,有效地忽略所有其他分支的所有更改。它旨在取代分支机构的旧发展历史。
请注意,这与递归合并策略的
-Xours
选项不同