这是从git pull / merge解决冲突的正确方法吗?

时间:2012-04-03 18:11:14

标签: git

我跑了git pull origin,现在我遇到了将我的分支与主人合并的问题。

这就是我的所作所为:

  1. 在我的分支上提交所有更改
  2. git checkout master
  3. git pull origin master
  4. git checkout my branch
  5. git merge master
  6. 打开'project.pbxproj'并删除所有需要的标记
  7. 打开其他冲突文件并删除所需的标记
  8. git add for both files and git commit
  9. 这是对的吗?

2 个答案:

答案 0 :(得分:1)

更新: 由于更新了问题,此内容已更新...

因此,当您执行pull时,git将尝试合并现有更改并通知您任何冲突。看起来你在分支上进行更改,我们称之为newBranch。然后签出本地主分支并执行拉取。如果你直接拉,git将结合fetch和merge命令,只有在有冲突时才让你干预。

git push origin master

将您的主分支推送到原始远程。类似地,

git pull origin master

哪个会从远程分支拉入您当前的分支。

我假设在步骤(4)中,你忘了提到你要检查哪个分支,但我们假设它是newBranch。您正尝试在步骤5中合并主INTO newBranch,这也是您通常想要做的事情的反面。通常,在测试功能或更改后,将分支合并到主分支中。解决合并中的任何冲突后,它将作为合并的一部分提交。然后,您可以将合并的主分支从origin推送到master。

答案 1 :(得分:1)

是的,这是解决合并冲突的完全可接受的方法。我只是注意到您不需要本地master分支 - 您可以省略步骤2,4和5。