git - git rebase 无事可做
问题描述
我有以下提交,以及 master 和其他 2 个分支(b1 和 b2):
m1 - a1 - b1
^ ^ ^
| | branch b
| branch a
master
我想重新设置 b 分支,使其父级为 master:
/ - a1
m1
\ - b1
如果我做git rebase master
或git rebase origin/master
,我得到Current branch b is up to date
。这似乎是错误的,但我认为这与 b 在某些方面已经植根于 master 的事实有关。我必须使用 --onto 似乎也是错误的。
解决方案
老实说,在这种情况下,您可以将提交挑选b1
到来自以下的新分支master
:
# from b
git reset --hard master
git cherry-pick b1
如果您想使用变基选项,请使用--onto
:
# from b
git rebase --onto m1 a1
上面说要重新设置b
分支,以便其父a1
提交(只是b1
提交)的提交现在应该位于一个新的基础上,特别是 commit m1
。
推荐阅读
- c# - 在进入列表框之前更改数据
- android - Android 将文件下载到 SD 卡
- react-native - TypeError:Super 表达式必须为 null 或 react native 中的函数
- ios - 如何在 Mapbox iOS SDK 中使用捆绑字体?
- firebase - Firebase,Flutter:我可以在 signInWithCredential 之前检查 PhoneAuthCredential 的有效性吗?
- python - 如何在我的 python 代码中解决这个错误?
- php - 如何获取从两个表中收集数据并更新列的对象的属性?
- tensorflow - Colab 资源和 Self-Attention(分配张量时的 OOM)
- java - Java:在某个字符之前获取子字符串
- c++ - 如何访问使用创建的列表中的结构元素
- 图书馆?