将 master 的更改合并到我的分支中

Posted

技术标签:

【中文标题】将 master 的更改合并到我的分支中【英文标题】:Merging changes from master into my branch 【发布时间】:2017-04-24 01:18:23 【问题描述】:

我在 git 中有两个分支:mastercustom_branch

有人向master 添加了一些我需要在custom_branch 中使用的代码。我试过这个:

git branch custom_branch
git merge master

但是当我这样做时,它会说:

Already up-to-date.

但是,当我比较mastercustom_branch 时,仍然没有变化。我错过了什么?

附:我不想rebase,因为其他人也使用这个分支。

【问题讨论】:

因为使用您提供的命令git branch custom_branch,您不会更改为custom_branch,只是停留在master。执行git checkout custom_branch,如果在您创建custom_branch 之后主服务器有一些更改,那么如果您想将更改合并到您的custom_branch,请执行git merge master 我已经在我的回答中提出了这个建议,但他似乎遇到了 git 无法识别更改的问题。 有同样的问题。已重新调整并尝试多次合并。 git 说是最新的,但更改没有合并到我的 custom_branch。当我签出 master 分支时,我可以看到更改。 【参考方案1】:

git checkout custom_branch && git rebase master

这将使用来自master 分支的更改更新custom_branch

不要忘记首先确保master 是最新的。 git pull


git checkout custom_branch && git merge master 也可以这样做


关于为什么第一个是(可能)你应该使用的解释:When do you use git rebase instead of git merge?

【讨论】:

谢谢,但我不想变基,因为其他人也在使用这个分支。此外,运行第二个命令表明一切都已经是最新的了。 @Darth.Vader 在尝试合并之前你跑过git pull 吗?【参考方案2】:

回答我自己的问题,但是为了将上游主节点的更改拉到我的自定义分支中,我这样做了:

git pull [URL TO UPSTREAM'S REPO] master

【讨论】:

最后我做到了git pull origin master【参考方案3】:

git merge master 将使用 local 主分支的更改更新您当前的分支,该分支的状态将是您上次在该分支上拉取时的状态。

我想这就是你要找的东西:git merge origin master

【讨论】:

以上是关于将 master 的更改合并到我的分支中的主要内容,如果未能解决你的问题,请参考以下文章

创建分支后从 master 获取更改

使用 Git 将 master 的更改合并到所有分支中?

执行合并后在两个分支中同时提交

你的分支和“起源/主人”已经分歧

如何将分支合并到 github 中的 master 中?

在 Git 中获取从 master 到分支的更改