【发布时间】:2015-11-11 14:21:43
【问题描述】:
一个月前,我从 master 离职,从事一个大项目。然后我将它合并回master。毫不奇怪,有合并冲突。我解决了它们并提交了合并。现在几天后我正在测试一些代码,我发现在 master 上所做的一些更改已经消失。问题:我是否搞砸了我的冲突解决方案,或者 git 是否自动合并了该更改?换句话说,在 git 中有没有办法查看合并提交并知道哪些文件有冲突以及它们是如何解决的?
我在说什么的图片。 (我是视觉的)
|
+ <-------------------------+ Merge back to master
| |
+ -- Change that got lost +
| |
+-------------------------> + My branch
|
master
git show merge-commit-id 不是为我做的。我在团队资源管理器中使用带有 git 的 Visual Studio。我可以清楚地看到代码在合并提交中丢失(红色),但我不知道这是冲突解决还是自动 git 合并。我问的原因是因为我在 master 上还有许多其他更改,我想确保它们仍然存在。谢谢。
(我可以恢复合并提交并再次执行,但会有很多冲突需要再次解决……这是我唯一的选择吗?)
【问题讨论】:
-
哇。从很久以前看这个问题,我认为现在更好的答案是使用更好的 git 工作流程,例如... gitflow!我没有大的合并冲突了。
-
使用 Git 2.36(2022 年第 2 季度),
git log --remerge-diff可以帮助您并向您展示在过去的合并解决方案中所做的事情!见my answer to this other question。
标签: git visual-studio-2013 merge team-explorer