如何撤消git rebease操作

时间:2015-11-19 07:52:23

标签: git

情况很复杂。

有2个分支,feature& develop

feature分支git log

* D
* E (feature checkout from develop)

develop分支git log

* H
* G
* F
* E

(1)in feature do => git rebease develop

它应该是一个合并操作,重新更改开发的提交信息,git日志如下,标志-表示由rebease更改

* H -
* G -
* F -
* D
* E

(2)有人继续推送到feature几天,git log如下所示

* A
* B
* H -
* G -
* F -
* D
* E

(3)有一天,功能开发者发出拉动请求来开发分支

PR的更改提交:

* A
* B
* H -
* G -
* F -
* D

它应该低于,cos rebease改变开发的提交H,G,F

* A
* B
* D

我想撤消rebease动作(1)进行合并但重新进行,然后重做动作(2)

是否可以修复 ?????或者只是接受 ...

这让我无法复习,cos H,G,F ....总数超过100 ~~

1 个答案:

答案 0 :(得分:2)

可能您应该恢复到以前的状态(请参阅git reflog)然后重新应用rebase(检查git rebase -i 交互式 rebase,当您可以选择提交到rebase的内容时以及以何种顺序)