Git rebase公共分支

时间:2016-02-12 11:31:11

标签: git

第1步:我有master分支后跟两个提交,master分支$ git log master

34015a753b1
decde523115 

步骤2:然后,我有一个功能专用分支这个分支基于主分支创建,$ git checkout -b feature master& git log

34015a753b1
decde523115

第3步:然后我在我的功能分支上进行了两次提交,

$ git log 

78035a743a6
42015a743a2
34015a753b1
decde523115

第4步:接下来,我的队友在master分支上做了一个新的提交,然后他推送到远程服务器。 $ git log master

24315a753b1
34015a753b1
decde523115 

步骤5:假设我想在我的专用功能分支中进行主新的提交更改,我必须运行命令,

git checkout feature
 git rebase master 

对!这是修改专用分支的正常情况......

所以现在我的问题是:假设我在公共分支上错误地重新定位,掌握你的功能分支,

$ git checkout master
$ git rebase feature

$ git log

现在我的项目历史记录发生了变化,我的主分支远程提交ID不同,我的本地主分支ID由于错误的rebase而不同。现在如何撤消这个错误的rebase?

感谢。

2 个答案:

答案 0 :(得分:1)

使用git reflog查找旧提交,然后使用git reset分支找到它。

答案 1 :(得分:1)

  

现在如何撤消这个错误的rebase?

阅读本文并学习如何操作:

How to move HEAD back to a previous location? (Detached head)

你会在几个方面找到一个非常详细的答案来修复"它