创建分支后从 master 获取更改
Posted
技术标签:
【中文标题】创建分支后从 master 获取更改【英文标题】:get changes from master after creating branch 【发布时间】:2019-04-12 04:06:42 【问题描述】:我正在使用 Egit
和 eclipse
来处理我的 java 项目。我从 master 创建了一个名为 branch1
的分支并开始处理它。
与此同时,我的同事从 master 创建了另一个分支 branch2
,进行了一些更改并将 branch2
合并回 master。
现在我需要将 master 上所做的所有更改都转移到我的分支 branch1
。
如何使用eclipse
或github
以及不使用任何命令来实现这一点。
【问题讨论】:
您可以rebase your branch to the latest master commit,将 master 中的更改合并到您的分支中,或者从 master 中挑选您想要的所有提交。 现在我很困惑在合并和 rabase 之间选择什么,这对我来说是新的。 变基和合并导致不同的历史。你想要什么是你的选择。如果没有或只有很少的冲突,我宁愿重新设置:确保branch1
已签出并在 History 视图中右键单击最新的 master
提交(确保 Show All Branches and Tags 已启用,否则只有 branch1
提交可见)并选择 Rebase on。
@howlger 感谢您的回答。由于我对 git 很陌生,请您详细说明答案部分的步骤。
你坚持两个步骤中的哪一个? 1. 确保branch1
已签出(项目名称应以[branch1]
修饰; 2. 在History 视图中右键单击最新的主提交并选择Rebase on .
【参考方案1】:
使用 Eclipse/EGit:
-
打开“Git 存储库”视图
确保
branch1
已签出(分别是您要使用远程 master
分支的更改更新的分支)。
右键单击您正在处理的存储库,然后单击Fetch from Upstream
。这将获取有关远程存储库上新提交的信息(在您的情况下,是在创建分支 (branch1
) 后添加到主分支的新提交)。
展开Remote Tracking
节点并右键单击master
分支。选择Merge
或Rebase on
。这两个选项都使用同时添加到 master
分支的更改来更新您的分支 (branch1
)。
Merge
和Rebase on
的区别:https://***.com/a/16666418/5207900
【讨论】:
以上是关于创建分支后从 master 获取更改的主要内容,如果未能解决你的问题,请参考以下文章