git合并后,abort冲突不显示



我有一个关于git拉冲突的问题。我有一个功能和一个开发分支。

  1. 首先,我从BitBucket中拉出开发分支,在一些文件中有冲突。但是我没有解决冲突并终止合并。
  2. 然后,我将我的功能分支推到BitBucket,并创建了pull request。
  3. 由于冲突,pull请求被拒绝。
  4. pr被拒绝后,我将分支改为develop,并再次从BitBucket中拉出develop分支。
  5. 但是已经没有冲突了。在功能和开发分支中,"所有文件都是最新的"。现在显示消息。我现在可以做些什么来解决冲突或批准我的pr ?

冲突似乎是在您的developmain(或master分支)之间。

当你输入git pull时,你实际上是在拉匹配的分支,所以你不会看到冲突。

为此,您需要用PR拉出您的目标分支。假设这是origin远程上的main,您需要键入git pull origin main

冲突总是发生在两个分支之间:当你试图将两个不同的人的更改合并在一起,而他们都更改了同一段代码时,就会发生冲突。

在步骤1中,您描述了尝试组合来自"开发"的最新更改。你的变化"feature"分支。你看到了冲突,放弃了合并。一个"pull"只是一个获取一些偏远的变化,其次是将这些更改合并到当前分支。

在步骤2中,你试图做同样的合并相反:你提出了一个公关合并"feature"进入"发展",所以你看到了完全相同的冲突。毫无疑问,您仍然在尝试合并相同的更改。

在步骤4中,您做了一些完全不同的事情:您切换到本地的"开发"副本,并从远程的"开发"中拉入更改。你当地的"发展"没有任何自己的变化,所以没有冲突,git只是"快进"。分支指向同一个提交。无论对你的本地特性分支有什么影响,

都不会有

。你仍然需要合并来自"特性"的更改。和";develop"。查看"功能"并"合并"发展"。进去。除非"develop"自上次尝试以来已更改,您将得到与步骤1相同的冲突。你必须解决它们,没有魔法棒能让你避免它们。然后将结果上推到BitBucket,拉取请求将不再被阻塞,因为所有的变化都来自于"开发"。将被合并到"特性"中,并且不再冲突。

最新更新