2012-04-03 67 views
1

我跑git pull origin,现在我有一些问题与合并我的分支与主。这是从git pull/merge解决冲突的正确方法吗?

这里就是我所做的:

  1. 犯我分支的所有更改
  2. git的结帐主
  3. 的git拉出身主
  4. git的结帐我的分支
  5. 混帐合并主
  6. 打开'project.pbxproj'并删除所有需要的标记
  7. 打开其他文件冲突并删除需要标记
  8. git的增加对文件和git的承诺

这是正确的吗?

回答

1

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

1

UPDATE:这是更新由于更新的问题...

所以,当你做一拉,git会尝试合并现有的变化并通知您任何冲突。看起来您正在对分支进行更改,我们将其称为newBranch。然后您签出本地主分支并执行拉取。如果你进行直接拉取,git将结合取指和合并命令,并且只有在有冲突时才允许你介入。

git push origin master 

将您的主分支推送到原始远程。同样,

git pull origin master 

这将从远程分支拉入当前分支。

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

+0

我更新了我的问题,请参阅。感谢回复! – 2012-04-03 19:24:10

+0

关于推拉的事情是错误的。首先是命令,拉或推,然后是远程(在本例中为别名),然后是ref,在这种情况下是主分支。所以“git push origin master”和“git pull origin master”。因为它是主分支,所以它是默认设置来跟踪它的原点/主,所以只需要“git pull”和“git push”。 – ralphtheninja 2012-04-03 19:52:38

+0

你是对的。我已经更新了我的答案,以保证正确性。 – jmstone617 2012-04-03 20:05:49