8

我有(提交按字母顺序创建)

origin/topic  A-B-C-D-W-X

topic         A-B-C-D-Y-Z

有没有办法让我的topic分支看起来像

A-B-C-D-W-X-Y-Z

引入合并提交?


通常我会做

$ git checkout topic
$ git fetch origin
$ git merge --ff-only origin/topic

但是因为Yand是在andZ之后提交的,所以快进是行不通的。WX

我怀疑一些聪明的变基或樱桃采摘可能会起作用,但我无法理解它:{

4

3 回答 3

11

您可以尝试:

git checkout topic
git pull --rebase origin topic

检查有关 rebase 选项的fetch 手册页注释。

我建议使用git-smart 之类的东西,它会在可能的情况下进行快进(更快),如果没有,则进行变基。如果您有任何更改,它还将存储本地更改,并为您提供已提取的远程更改的摘要。

于 2013-11-26T16:54:36.520 回答
6

作为mamapitufo's answer的替代方案,您还可以执行以下操作,这将为您提供完全相同的结果:

git fetch origin
git rebase origin/topic topic

topic如果您已经检查了最后一个参数,则它是可选的。

于 2013-11-27T04:13:21.447 回答
2

如果您已经topic签出并origin/topic获取了跟踪来源/主题的内容(听起来像您这样做),您可以:

git rebase

我对mamapitufo 投了赞成票。

于 2013-11-26T17:00:19.047 回答