[英]Git Rebase is not rebasing the entire branch
出于某种原因,运行git rebase
突然没有重新定义我的整个分支,我无法想象为什么。 在rebase之前我所拥有的是以下内容:
运行git rebase develop
后我得到的是:
请注意,在rebase中没有来自分支的提交。 在这一点上,我必须运行一个git reset --hard
,在最后一次提交现在是无头分支以恢复原状。
奇怪的是,如果我在feature-relationalSurveys
分支上创建了超出屏幕截图中显示的更多提交,然后进行rebase,那么所有其他提交都将在rebase中出现。 这就像git不知道分支实际开始的位置。 我以前从未见过这种情况,我不知道是什么导致它或如何解决它。 有任何想法吗?
我将根据提供的信息进行猜测。 A)您的可视化工具被破坏或B) develop
已包含feature-relationalSurveys
所有内容。 您可以通过尝试另一个可视化工具(如git log --decorate --graph
来测试A.
Lemme解释B.关键信息是......
feature-relationalSurveys
处于合并点,rebase不应该合并。 feature-relationalSurveys
和develop
。
origin/develop
处于同一点。 feature-relationalSurveys
中的提交都没有提交。
我能想到这件事的唯一方法就是你有这样的事情......
2 [develop]
|
1
| A' [feature-relationalSurveys]
A |
| B'
B |
| C'
C /
|/
D
我不确定你是怎么进入那个状态的,可能是通过一个奇怪的合并或变基,但你去了。 当Git转向rebase feature-relationalSurveys
开发它时, C'
'的内容与C
相同,所以它会跳过它。 B'
的内容与B
相同,所以它会跳过它。 A'
和A
是相同的,跳过。 没有任何不同的内容,所以它只是在feature-relationalSurveys
中进行develop
。
2 [develop] [feature-relationalSurveys]
|
1
|
A
|
B
|
C
|
D
无feature-relationalSurveys
变化是在尖端可见的develop
,因为他们埋在较早develop
的历史。
这是我最好的猜测,只有你可以验证。 这将有助于显示变革之前的develop
状况。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.