如何签出远程分支,将其重新绑定到本地主服务器,然后与本地主服务器合并?

时间:2013-09-12 03:46:40

标签: git git-remote git-checkout

我的一个项目,在GitHub,最近收到了另一个人的合并请求。这很棒,但我不得不学习如何在出现冲突时管理这些请求。最初的几个合并请求可以由GitHub自动合并,所以我不得不做任何事情。最新的一个有冲突,因为他的更改是在我的旧提交之后进行的。我在检查后对存储库进行了更改,因此他比我的更旧,无法自动合并。

我正试图通过检查他的分支来解决这个问题,将其重新绑定到当前的本地主人,然后将其合并到我的本地主人。

所以,我将他的存储库添加为远程。然后我尝试检查他的存储库,但是当我查看他的存储库中的代码时,它并没有反映我在GitHub上看到的代码。我只看到了我自己的本地主人的克隆。这是对我正在做的事情的伪造:

git remote add person git://path/to/his/repo.git
git checkout -b person/master
git fetch person

之后,当我跑git branch -r时,我可以看到他的分支。他的分支名为person/master。然后我尝试git checkout -b person/master。我看看他的分支中的代码期望看到他改变的代码,但我只看到自己的代码。当我在他的Github页面上查看他的person/master分支时,我看到他所做的更改没有反映在我的结帐中。

我做错了什么?

1 个答案:

答案 0 :(得分:1)

git remote add person git://path/to/his/repo.git
git checkout -b person/master
git fetch person

我宁愿先取,然后结帐:

git remote add person git://path/to/his/repo.git
git fetch person
git checkout -b person/master

但拉动请求背后的一个想法是它们应该自动应用......或“暂停”;)
换句话说,贡献者应该为您完成工作,然后提交更新的拉取请求供您申请。