Git 变基 returns 但没有任何反应
Git rebase returns but nothing happens
我正在尝试将我的功能分支重新设置为开发分支(git rebase develop
在签出分支后)但每次尝试时我都收到消息:
Current branch feature/my-feature-branch is up to date
但是检查 develop 显示 git 日志没有任何变化。
非常感谢任何指点,谢谢。
好吧,假设 develop
可能对遥控器进行了更改,而您 还没有 在本地 develop
分支中进行更改,那么您对no-op 可能需要变基。在这种情况下,您可以先从远程获取,然后在跟踪分支上变基,例如
# from your feature branch
git fetch origin
git rebase origin/develop
如果您真的想 git rebase develop
并让它工作,那么您将不得不通过拉动单独使 develop
与遥控器保持同步。
请注意,如果上述没有解决问题,那么可能您 develop
中没有任何更改,这与您的预期相反。
这里好像有误会
如果你在 develop 之上 rebase 一个功能分支,develop 不会发生任何事情。
所以之后检查 develop 会正确地告诉你没有任何改变。这是意料之中的。变基不会改变你变基的分支。
相反,它可能会更改您正在变基的分支,在本例中是您的功能分支。
让我们举个例子,从这个开始:
develop
v
1---2---3---4---5---6
\
7---8---9
^
feature
如果您现在查看功能分支并将其变基到开发之上,您最终会得到:
git checkout feature
git rebase develop
develop
v
1---2---3---4---5---6
\
7'--8'--9'
^
feature
但请注意,没有任何进展。
我用撇号标记了 7-8-9 提交,以表明这些实际上是新提交,它们将从最初的 7-8-9 提交创建,但它们将有新的父项,因此会有新的哈希值。
您收到的 git 消息,Current branch feature/my-feature-branch is up to date
意味着您在执行变基命令时已经处于最后一种情况。 你的功能分支已经在开发之上,所以没有什么可做的。
为了真正改变开发,你要么做一个合并,最终会是这样的:
git checkout develop
git merge --no-ff feature
develop
v
1---2---3---4---5---6-----------M
\ /
7---8---9
^
feature
或 fast-forward 合并,结果如下:
git checkout develop
git merge --ff-only feature
develop
v
1---2---3---4---5---6---7---8---9
^
feature
我正在尝试将我的功能分支重新设置为开发分支(git rebase develop
在签出分支后)但每次尝试时我都收到消息:
Current branch feature/my-feature-branch is up to date
但是检查 develop 显示 git 日志没有任何变化。
非常感谢任何指点,谢谢。
好吧,假设 develop
可能对遥控器进行了更改,而您 还没有 在本地 develop
分支中进行更改,那么您对no-op 可能需要变基。在这种情况下,您可以先从远程获取,然后在跟踪分支上变基,例如
# from your feature branch
git fetch origin
git rebase origin/develop
如果您真的想 git rebase develop
并让它工作,那么您将不得不通过拉动单独使 develop
与遥控器保持同步。
请注意,如果上述没有解决问题,那么可能您 develop
中没有任何更改,这与您的预期相反。
这里好像有误会
如果你在 develop 之上 rebase 一个功能分支,develop 不会发生任何事情。
所以之后检查 develop 会正确地告诉你没有任何改变。这是意料之中的。变基不会改变你变基的分支。
相反,它可能会更改您正在变基的分支,在本例中是您的功能分支。
让我们举个例子,从这个开始:
develop
v
1---2---3---4---5---6
\
7---8---9
^
feature
如果您现在查看功能分支并将其变基到开发之上,您最终会得到:
git checkout feature
git rebase develop
develop
v
1---2---3---4---5---6
\
7'--8'--9'
^
feature
但请注意,没有任何进展。
我用撇号标记了 7-8-9 提交,以表明这些实际上是新提交,它们将从最初的 7-8-9 提交创建,但它们将有新的父项,因此会有新的哈希值。
您收到的 git 消息,Current branch feature/my-feature-branch is up to date
意味着您在执行变基命令时已经处于最后一种情况。 你的功能分支已经在开发之上,所以没有什么可做的。
为了真正改变开发,你要么做一个合并,最终会是这样的:
git checkout develop
git merge --no-ff feature
develop
v
1---2---3---4---5---6-----------M
\ /
7---8---9
^
feature
或 fast-forward 合并,结果如下:
git checkout develop
git merge --ff-only feature
develop
v
1---2---3---4---5---6---7---8---9
^
feature