创建分支后从 master 获取更改

Posted

技术标签:

【中文标题】创建分支后从 master 获取更改【英文标题】:get changes from master after creating branch 【发布时间】:2019-04-12 04:06:42 【问题描述】:

我正在使用 Egiteclipse 来处理我的 java 项目。我从 master 创建了一个名为 branch1 的分支并开始处理它。

与此同时,我的同事从 master 创建了另一个分支 branch2,进行了一些更改并将 branch2 合并回 master。

现在我需要将 master 上所做的所有更改都转移到我的分支 branch1

如何使用eclipsegithub 以及不使用任何命令来实现这一点。

【问题讨论】:

您可以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 分支。选择MergeRebase on。这两个选项都使用同时添加到 master 分支的更改来更新您的分支 (branch1)。

MergeRebase on的区别:https://***.com/a/16666418/5207900

【讨论】:

以上是关于创建分支后从 master 获取更改的主要内容,如果未能解决你的问题,请参考以下文章

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

Gitlab如何将master上的当前代码下拉到本地分支

如何获取一个分支的提交历史?

只获取已经合并为master / develop的远程分支

Android Studio - 线程完成后从 SQLite 获取数据

使用 master 分支的最新更改更新您的分支 [重复]