这是older question的变体,带有变基扭曲。
我想做一个git pull --rebase
,但要等到特定的提交为止。这不是拉特定的提交,而是将向上拉。远程主服务器如下所示。
A<-B<-C<-D<-E<-F<-HEAD (Remote master HEAD)
假设我的局部特征分支HEAD指向G,而G则指向D:
A<-B<-C<-D<-G<-HEAD (Current local feature branch HEAD).
我想通过重新设置提升到E,这样我的分支最终看起来像这样:
A<-B<-C<-D<-E<-G<-HEAD (local feature branch end goal).
但是,这只是一个特例。我想选择任何合格的提交哈希,而不仅仅是上面示例中倒数第二个。
自然,我希望提交E的哈希值在操作结束时与远程主服务器匹配。我不愿意指出这一点,因为某些类型的交互式基准库编辑会导致该属性消失。
我该怎么办?
答案 0 :(得分:3)
从远程获取更改:
git fetch origin
以master的远程版本为基础,忽略一些提交:
git rebase origin/master~<n>
其中<n>
是您要忽略的从master
尖端开始的提交次数。
如果您具有要作为基准的提交的ID,则可以改用它:
git rebase <commit-id>
答案 1 :(得分:-1)
尝试交互式变基:
git rebase -i e3f8704
e3f8704是您的提交哈希码。