Git rebase和git合并

时间:2014-03-31 15:38:22

标签: git git-branch git-merge

据我所知,如果我准备好与远程主控合并分支,我需要做:

  1. git checkout'my branch'

  2. git rebase master(rebase因为我想要简单的历史记录+我的变化是微不足道的。)但是与我的当地主人,而不是原始主人,这将是变革,对吗?

  3. git checkout master

  4. git merge'my branch' - 这将进行快进合并并完成整个过程。

  5. 但是如何与远程主站进行相同的合并?我没有在互联网上看到任何明确的解释。我不能只在3d步骤上检查原点大师。 我错过了什么?

2 个答案:

答案 0 :(得分:3)

您可以像这样

简单地在原始主人之上进行变基
git rebase origin/master

此外,您可以跳过3.和4.简单地将您的重新分支推送到原点/主页

git push origin my_branch:master

答案 1 :(得分:3)

远程主服务器是远程服务器标识为master的任何内容。每当您从origin远程提取时,远程master提交的git标记都会origin/master(在remotes引用中)。

更新远程repo的refs的方法是推送它(它也发送任何提交或其他任何需要)。所以:

git checkout master       # or however you want to get `master` current with origin
git pull                  # ...
git checkout mybranch
git rebase master
git checkout -B master    # you know it's going to --ff, so just move the ref
                          # or, you could `git checkout master; git merge mybranch`
git push origin master    # push the new commits to the remote's `master`