Github pull 请求 : There isn't anything to compare

标签 git github merge branch pull

我有一个 master 分支和一个简单项目的 add_db 分支。我已经完成了所有代码编辑并推送了 add_db。但是,我想将所有这些提交 merge 到我的主分支中。当我尝试在 github 上创建 pull 请求时,收到一条错误消息:没有任何内容可供比较。

我确保我有base:master Compare:add_db。

我可以做什么来解决这个问题?

这是上下文的存储库: https://github.com/boxcarcoder/Task-List

我在另一篇文章中看到我可以使用 git rebase --onto 或 gitcherry-pick 但我不确定如何使用它们。我是 git 新手。感谢您花时间阅读本文。

最佳答案

Git commits are linked list of commits with later commit having and branches are pointers to the commit reference of previous commit. C1<-C2<-C3<-C4<-C5

如果您的子分支源自父分支,您可以创建 merge 请求。

         master
          |
          v
 C1<-C2<-C3    new_branch
          ^       |
          |       v
          C4<-C5<-C6

如果您看到两个分支的提交历史记录,则它们的第一次提交(头提交)是不同的。 因此,您无法创建 merge 请求,因为两个分支都是从不同的历史记录开始的。

就您而言:

      master
        |
        v
C1<-C2<-C3

C4<-C5<-C6
         ^
         |
      add_db

在您的情况下,您只需比较并 merge 它们,因为 merge 它们将创建一个新的 merge 提交并对齐提交历史记录。

master: C1<-C2<-C3
                   \
                   C7(merge commit)
                   /
add_db: C4<-C5<-C6

还要确保您始终从其他分支创建新分支。

关于Github pull 请求 : There isn't anything to compare,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53844405/

相关文章:

git - CI/CD 失败,因为缺少构建所需的文件,但在 .gitignore 中的公共(public)存储库中不需要

git gc 命令反复询问 Unlink of file '.git/objects/pack/pack-.pack' failed.我应该再试一次吗? , 为什么 ?以及如何跳过输入 Y/N

带有 VSCode 和 Ubuntu 的 Git 配置问题

ruby - 让用户知道您的 Github 分支不再维护(即已合并)的最佳方式?

r - 如何在R中合并列表的所有元素?

GIT 使用 receive.denyCurrentBranch=updateInstead 更新工作树,即使对于被拒绝的推送(receive.denyNonFastForwards=true)

git - 如何从任何工作树中找到主工作树

Github 比较来自不同用户的两个不同的存储库

git 与 --no-ff 和 --squash merge

python - 合并字典而不覆盖以前的值,其中值是一个列表