【发布时间】:2020-10-29 13:51:21
【问题描述】:
我目前在dev 分支上,在local/dev 分支上有一些变化。
我做了rebase:
$ git rebase dev local/dev
Created autostash: 92915886
Applied autostash.
Successfully rebased and updated detached HEAD.
提交被重新定位,但dev 指针未更新:
阅读man git rebase:
由当前分支中的提交所做但不在
中的所有更改 保存到临时区域
**这是第二张图片上标记为>的提交
当前分支被重置为
...
** upstream 是 dev。所以我现在在dev
然后将提交重新应用到当前分支
** 提交被重新应用到dev
为什么dev 指针没有与HEAD 一起移到顶部?
我应该应用一些选项来将我当前的dev 与HEAD 一起移动吗?
更新
这是非常非常战略性的。当dev 和local/dev 不同的班轮并且可以被快速转发时,我的dev 被移动到顶部,因为我预计会工作。没有任何多余的
git branch -f dev
git checkout dev
【问题讨论】:
-
“重置到上游”并不意味着“检查上游”。您正在变基的分支指向上游分支指向的同一提交。你只会影响你正在变基的分支,而不是你要变基的分支。
-
@LasseV.Karlsen:1. 好的,它不会结帐到
dev。所以没有当前分支。 man 说:then reapplied to the current branch是什么意思? 2.You will only affect the branch you're rebasing。我在上游的local/dev处重新提交提交。变基后的分支local/dev保持不变。你的意思是它会受到影响?谢谢。
标签: git git-rebase