这是我的提交历史记录:
* Merge commit (missing file a.c)
/|
||
*| Add new file a.c again <- branchB
||
|* Remove files a.c <- branchA
||
*| Remove files a.c
||
\|
|
* Add new file a.c
|
|
...
我有一个分支A,我在其中添加了一个文件。然后,我又创建了一个分支B。由于某些原因(重构),该文件后来在分支B中被删除。我将这些更改回溯到了分支A中。但是后来,我又在分支B中添加了该文件。最终,我将分支B合并到了分支A中。
git checkout branchA
git merge branchB
合并时,没有提到文件a.c。在合并后,文件在branchA中不存在。为什么Git无法看到文件a.c在branchB中是在删除之后(就日期和时间而言)添加的,因此它需要保留它?至少,我希望看到冲突或其他提示...
感谢您的帮助!
Add new file a.c
提交),以及两个分支尖端 A 和 B。Git将合并基础与A进行差异比较,以查看A组更改了什么。Git将合并基础与B进行差异比较,以查看B组更改了什么。然后,Git将两个更改组合起来,将组合后的更改应用于合并基础,并提交结果。 - torek