git pull
,我得到合并冲突。我手动解决合并冲突并再次发出拉,但Git拒绝这样做,因为Git仍然认为存在合并冲突。
有没有办法强制Git再次执行拉动操作,并使其从头部查找“diffs”(如果有的话)(不需要提交我所做的更改)?
git pull
,我得到合并冲突。我手动解决合并冲突并再次发出拉,但Git拒绝这样做,因为Git仍然认为存在合并冲突。
有没有办法强制Git再次执行拉动操作,并使其从头部查找“diffs”(如果有的话)(不需要提交我所做的更改)?
为什么在第一次解决合并冲突之后发布第二个git pull
?这是没有意义的。修复合并冲突后,您需要git commit
,它将创建将远程分支与本地分支合并(并包括您的冲突解决方案)的合并提交。这里
的过程是:
git pull
你得到的冲突的通知。你可以使用任何你使用的东西(尽管希望你已经连接了本地需要使用git difftool
的所有东西......
冲突解决后,你现在有一个工作目录,其中包含远程更改和本地变化。这是唯一不同的是,git的不能做合并自身,需要你的帮助。
现在
git commit
建立在你的本地仓库的commit是总和引入的远程更改和您本地的更改。然后您
git push
发布您的更改,很好地合并,与远程头。
您必须在解决冲突并将其推回后提交更改。通常而不是使用git pull,我做了git fetch
,然后是git merge
,然后是git commit
。这只会获取上游更改,允许您手动合并和解决冲突,然后在本地提交它们。准备就绪后,请将更改回推到上游。
如果你使用这个工作流程,你可以:
git fetch
git merge
#resolve conflicts
git commit
git fetch #check for new changes
#eventually
git push
成瘾,后拉,合并,并承诺,你也可以尝试(假设你的遥控器是“出身”,当然)
git remote show origin
对我来说这非常令人放心!
同意。我想知道如何确保不存在更多的合并冲突。 git pull的“已经最新”消息非常令人放心。 – Jean
@alertjean:只需运行'git status'。它会告诉你所有悬而未决的冲突。如果你还有冲突,'git commit'不会提交。另外,如果你使用'git mergetool',它会运行你所有的冲突。 –