我正在尝试使用git rebase,但我遇到了一个noop错误
然而,我已经成功地将我的测试分支合并到我的主分支 当我尝试使用git-rebase时,我得到了一个错误noop 我不能重新安排我的任务 这是我的git日志的结果,请忽略最后一行代码 这不是一个错误,也不完全是。它只是告诉您,您已经请求了复制“无提交”的操作,然后更新当前分支,作为处理空提交列表中所有零个提交的结果 请记住,我正在尝试使用git rebase,但我遇到了一个noop错误,git,github,noop,Git,Github,Noop,然而,我已经成功地将我的测试分支合并到我的主分支 当我尝试使用git-rebase时,我得到了一个错误noop 我不能重新安排我的任务 这是我的git日志的结果,请忽略最后一行代码 这不是一个错误,也不完全是。它只是告诉您,您已经请求了复制“无提交”的操作,然后更新当前分支,作为处理空提交列表中所有零个提交的结果 请记住,git-rebase通过复制提交来工作,就像通过git-cherry-pick一样。也就是说,git-rebase意味着: 查找由于某些原因不够好的一组提交 使用该提交列
git-rebase
通过复制提交来工作,就像通过git-cherry-pick
一样。也就是说,git-rebase
意味着:
- 查找由于某些原因不够好的一组提交
- 使用该提交列表,导航到一个特定的提交,然后开始复制
- 复制所有提交后,移动当前分支名称,使其指向最后一个复制的提交,从而放弃任何不再可查找的未复制提交
-i
将提交列表转换为一系列拾取
命令,并在生成的命令表上打开编辑器。每个pick
命令都会选择一个原始提交,以创建新副本。在您的情况下,列表为空,因此没有要执行的pick
命令。在过去,对于这种情况,git-rebase-i
只是失败(中止),这显然是错误的。现在git-rebase-i
设置onenoop
命令。如果删除命令表中的所有命令,则将中止重新基准
要使列表不为空,您需要位于一个分支上,该分支的某些提交不在master
上。请注意,在Git中,许多提交都同时在多个分支上:我们通常给Git rebase
的任务是移动某些分支上的提交,这些分支通常不是master
,因此它们在其他提交之后,通常是master
上的提交。这在技术上是不可能的:提交不能以任何方式更改、更改或移动,因此,通过复制提交,然后放弃原始提交,转而使用在新点出现的新副本,来实现重新基址:
...--o--o--o <-- master
\
*--*--* <-- branch-A (HEAD)
…--o--o--o请粘贴问题中的所有文本,而不是链接到图片。我已经用git rebase-i HEAD~4找到了一个解决方案
*--*--* <-- branch-A (HEAD)
/
...--o--o--o <-- master
\
*--*--* [abandoned]