因此,我们有master,分支X,它是master的最新版本,加上更多的提交。
我改变了master的基础,改变了历史--压缩了一些提交,改变了其他的。
然后我尝试用master改变分支X的基址--看起来这些重写并没有进入分支X--它们仍然是旧的提交消息--我该如何更新分支X的提交历史来匹配master呢?
(顺便说一句,看起来壁球和修复程序的重置很好,看起来只是重述)。
发布于 2012-11-29 21:40:39
如果您更改了master的基础,branch-X将不再是master的最新版本。我认为解决这个问题最简单的方法就是使用git cherry-pick。
从git checkout -b branch-Y master
git cherry-pick <sha>创建一个新分支,对于您需要的每个提交,可以从branch-X
git branch -f branch-X branch-Y; git checkout branch-X; git branch -D branch-Y我还建议在广泛使用rebase之前阅读更多关于rebase的内容:Git rebase or merge
https://stackoverflow.com/questions/13626082
复制相似问题