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

Dar*_*der 14 git version-control github git-merge

我在git中有两个分支:mastercustom_branch.

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

git branch custom_branch
git merge master
Run Code Online (Sandbox Code Playgroud)

但当我这样做时,它说:

Already up-to-date.
Run Code Online (Sandbox Code Playgroud)

但是,当我比较mastercustom_branch的变化还是不存在.我错过了什么?

PS我不想,rebase因为其他人也使用这个分支.

小智 97

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

我想这就是您正在寻找的:git merge origin master

  • IMO 这应该是公认的答案 (7认同)

teh*_*ehp 36

git checkout custom_branch && git rebase master

这将custom_branch根据master分支的更改进行更新.

不要忘记先确保它master是最新的.git pull


这也是可能的 git checkout custom_branch && git merge master


为了解释为什么第一个(可能)你应该使用什么:你什么时候使用git rebase而不是git merge?

  • @Darth.Vader 在尝试合并之前是否运行了 `git pull`? (4认同)
  • 谢谢,但我不想变基,因为其他人也在使用这个分支。此外,运行第二个命令表示一切都已经是最新的。 (3认同)

Pri*_*jee 11

做就是了:

git fetch origin master
Run Code Online (Sandbox Code Playgroud)

然后执行以下操作:

git merge master
Run Code Online (Sandbox Code Playgroud)


Dar*_*der 6

回答我自己的问题,但要将更改从上游的 master 拉到我的自定义分支中,我这样做了:

git pull [URL TO UPSTREAM'S REPO] master
Run Code Online (Sandbox Code Playgroud)

  • 最后我做了`git pull origin master` (3认同)