Git 解决合并冲突是否会同时修改源文件和目标文件?
我从Git 解决合并冲突是否会同时修改源文件和目标文件?,git,bitbucket,Git,Bitbucket,我从源分支->目标分支打开了一个PR,其中一个文件中存在冲突。因此,我签出了源分支,运行了git merge destination分支,然后解决了冲突文件中的冲突,运行了git commit和git push。然后,当我查看打开的PR时,我希望看到冲突的文件仍然存在于两个分支之间的差异中,并且有了新的更改,但是该文件完全消失了,这意味着源分支和目标分支之间的文件没有差异。我是否正确理解在git合并中解决冲突会将更改应用于源文件和目标文件,还是发生了其他情况?合并只会更改推送合并提交的分支。在您
源分支
->目标分支
打开了一个PR,其中一个文件中存在冲突。因此,我签出了源分支
,运行了git merge destination分支
,然后解决了冲突文件中的冲突,运行了git commit
和git push
。然后,当我查看打开的PR时,我希望看到冲突的文件仍然存在于两个分支之间的差异中,并且有了新的更改,但是该文件完全消失了,这意味着源分支
和目标分支
之间的文件没有差异。我是否正确理解在git合并中解决冲突会将更改应用于源文件和目标文件,还是发生了其他情况?合并只会更改推送合并提交的分支。在您的情况下,您合并到源
并推送,这意味着源
现在包含来自目标
的更改以及您为解决冲突所做的任何操作
如果未将任何更改推送到目的地
,则该分支的内容未更改。只有将合并提交也推送到该分支时,它们才会更改
如果PR现在告诉您,您的PR引入的文件中没有任何更改,我怀疑这意味着您最终使修改的
源
和原始的目标
完全相同。您可以通过在计算机上更新的沙盒上执行git diff source destination
来确认这一点。合并只会更改推送合并提交的分支。在您的情况下,您合并到源
并推送,这意味着源
现在包含来自目标
的更改以及您为解决冲突所做的任何操作
如果未将任何更改推送到目的地
,则该分支的内容未更改。只有将合并提交也推送到该分支时,它们才会更改
如果PR现在告诉您,您的PR引入的文件中没有任何更改,我怀疑这意味着您最终使修改的源
和原始的目标
完全相同。您可以通过在计算机上更新的沙箱上执行git diff source destination
来确认这一点