我仍在思考如何使用 git-rebase,我想在实际操作之前仔细检查我打算做什么!
我的 repo 中的相关分支目前如下所示:
o---o---o...... master
\
o---o---o---o---o---o---o---o---o develop
\
o---o feature
\
* sub-feature
我想实现的是:
o---o---o...... master
\
o---o---o---o---o---o---o---o---o develop
\
o'---o' feature
\
* sub-feature
我预计不会有任何冲突,因为 feature
分支只删除不再需要的文件,而 sub-feature
分支添加了新文件develop
分支上绝对不存在。
基于git-rebase documentation ,我想我需要从 sub-feature
分支运行以下命令:
git rebase feature
不过我有点不确定,因为我想重新定位到develop
而不是master
。考虑到这一点,我想知道是否应该从 sub-feature
分支运行以下命令:
git rebase --onto develop feature
如有任何帮助,我们将不胜感激!
最佳答案
onto
非常强大,但是由于您仍然习惯于 rebase ,并且无论如何此操作都将需要两个步骤(假设您还想更新两个 feature
作为 sub-feature
) 我会推荐这些步骤:
首先让我们更新功能
:
git checkout feature
git rebase develop
最后,更新子功能
:
git checkout sub-feature
git rebase feature
这将为您留下您在问题中陈述的树。
关于git - 在这种情况下执行 git-rebase 的正确命令是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34139145/