我知道this问题,但不确定如何将其映射到我目前的情况。 (再次基于是可怕的,撤销重订为双吓人!)从多个git rebases恢复“旧提交”
我开始了我的主人的几个不同的特性分支:
master x-x-x-x-x-x-x-x-x-x
\ \ \
FeatureA 1-2-3 \ \
FeatureB A-B \
FeatureC X-Y-Z
我想他们都合并在一起,并检查它们合并返回到以前工作大师的顶部,所以我做了:
git checkout FeatureB
git rebase FeatureA
git mergetool //etc
git rebase --continue
然后
git checkout FeatureC
git rebase FeatureB
git mergetool //hack hack
git rebase --continue
这给我留下了
master x-x-x-x-x-x-x-x-x-x
\
FeatureA 1-2-3
\
FeatureB A'-B'
\
FeatureC X'-Y'-Z'
然后我纠正一些位未正确编译,并得到了全功能设置为可接受的状态:
master x-x-x-x-x-x-x-x-x-x
\
FeatureA 1-2-3
\
FeatureB A'-B'
\
FeatureC X'-Y'-Z'-W
我的问题是,我的同事告诉我,我们还没有准备好FeatureA。
有没有什么方法可以让我保留所有的工作,还可以恢复到可以将FeatureC转换到Feature B的情况?
实际上,我感到困惑,为什么你重建基础可言。您应该已经创建了一个与master或featureC关联的新分支(称为featuresABC),然后将它们合并到其中,从而使功能分支完好无损。保留各种功能分支的独立历史是很好的。 – Cascabel 2010-04-22 15:47:20
@Jefromi,因为我还在学习...... – Benjol 2010-04-22 18:55:59
@Jefromi,如果你想检查(甚至自己声称) – Benjol 2010-04-23 06:37:45