Git:交互式 rebase 列出不正确(太多)的提交

标签 git git-interactive-rebase

当我运行 git rebase -i HEAD~2 时,它列出了 11 个提交而不是 2 个。为什么?

在此之前我所做的是:

  1. 检查了上游/分支A
  2. 将我新的 branchA 本地副本重新设置为 master
  3. 试图将我的本地分支 A 推回到上游
    • Git提示分支不同步,要先 pull 上游
  4. 将上游/branchA pull 入本地branchA
  5. 将本地 branchA 推送到上游/branchA(成功)

最佳答案

这取决于你的 git 树的样子。例如,“merge ” 提交可以有两个或多个父项。取决于此,您的提交可以有多个祖 parent 。

你可能需要 rebase

git rebase -i HEAD^1^2
git rebase -i HEAD^2^1
git rebase -i HEAD^2^2

(这三个之一)。

参见 here有关 git 的相对提交符号的更多详细信息。

关于Git:交互式 rebase 列出不正确(太多)的提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26372569/

相关文章:

git - 为什么交互式 rebase 将我的提交压缩在一起?

git - 如何在 git 交互式 rebase 期间将换行符插入改写的提交消息?

Gitlab 生成变更日志脚本

Git - 查找所有未 merge 的后代分支

git - 如何运行 git rebase 交互模式来删除重复提交

git - 为什么最近, git rebase -i squash 导致头部分离

git - 在 Git 中 rebase 时 COMMIT 将丢失什么?

git - push 失败。连接到 github.com 时出现未知 SSL 协议(protocol)错误 :443

git - 当我从客户端删除公钥文件时,Gogs 抛出 "Permission denied"错误

Git merge 解析版本说明