Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 合并非';在任一分支中都不能修改_Git_Git Merge_Merge Conflict Resolution - Fatal编程技术网

Git 合并非';在任一分支中都不能修改

Git 合并非';在任一分支中都不能修改,git,git-merge,merge-conflict-resolution,Git,Git Merge,Merge Conflict Resolution,当我尝试在master上重新设置分支featureX的基础时,我在一个文件(我们称之为moduleA/foo)中得到了一个冲突,该文件没有在master或featureX中修改,因为它们发生了分歧!我用下面的log命令检查了这一点: git log master...featureX -- moduleA/foo 结果是空的(由于分支发散,所以两个分支上的提交都没有触及文件) 这到底是怎么可能的?我能做些什么来避免这种误导性的冲突?正如@Xlee所说,重新设置基址会导致更改提交的散列并弄乱历史

当我尝试在
master
上重新设置分支
featureX
的基础时,我在一个文件(我们称之为
moduleA/foo
)中得到了一个冲突,该文件没有在
master
featureX
中修改,因为它们发生了分歧!我用下面的log命令检查了这一点:

git log master...featureX -- moduleA/foo
结果是空的(由于分支发散,所以两个分支上的提交都没有触及文件)


这到底是怎么可能的?我能做些什么来避免这种误导性的冲突?

正如@Xlee所说,
重新设置基址会导致更改提交的散列并弄乱历史记录

还有其他一些可能性,例如:
-
featureX
已被强制推送
-有人创建了一个commit,它更改了
moduleA/foo
文件,并在master上还原了它
-你这个笨蛋很顽皮,喜欢取笑你。
您的选择是实际冲突吗?i、 “是的,这是一个与冲突标记的“均修改”冲突,标记内部的部分更改看起来像我在
featureX
中所做的更改(但在另一个文件中)。多么奇怪。如果您不想更改,您可能可以执行
git checkout--theres--moduleA/foo
来删除冲突标记。我可以(感谢命令!),但我也想了解为什么会发生这种情况,以及如何避免这种情况:-)如果
git diff--name status master..featureX
不返回任何内容,它们是相同的。。。