繁体   English   中英

如何将新分支移至master分支中的最新提交?

[英]How to move my new branch to the latest commit in master branch?

我两天前从master分支创建了一个新分支。 我的队友之一对master分支(而不是新分支)进行了少量更改(它既在master分支中又在新分支中)。 现在,我想将新分支的来源移至master中的最新提交。

我有提交和分支,如下所示:

                 C4      <-- New branch
                /
C0 - C1 - C2 - C3 - C5   <-- Master

我想要的是:

                     C4  <-- New branch
                     /
C0 - C1 - C2 - C3 - C5   <-- Master

我尝试了git merge,但是没有用。

您需要git rebase

#On New Branch do:
git fetch origin master
git rebase origin/master

另一种方法是将master分支合并到新分支中。

#On New Branch do:
git fetch origin master
git merge origin/master

变基将分支从一个提交移动到另一个提交。 在内部,git创建新的提交并将其应用于指定的基础(它将重写您的项目历史记录)。

git checkout C4
git rebase master

完成功能使用后,您需要合并:

git checkout master
git merge C4

我建议也使用-i参数检查交互式变基:

git checkout feature
git rebase -i master

我通常喜欢在将其合并到主代码库之前使用它来完善功能分支。 在提交正式的项目历史记录之前,您可以真正确保一切正常。 在其他人看来,他们会认为您以一种明智的方式来完成自己的功能。 :)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM