列出未推送到 Git 中的远程存储库的提交

本文说明了我们如何列出尚未推送到远程存储库的所有提交。

Git 是救命稻草。 当您的分支领先于远程时,它会提醒您。

但是,控制台只显示您需要推送多少次提交。 它没有列出提交,那么我们如何查看这些提交呢?


列出未推送到 Git 中的远程存储库的提交

在本节中,我们将使用一个示例来说明如何列出尚未发布的提交。

在下面的示例中,我们将在我们的存储库中进行一些更改并提交它们,以便我们的分支比远程分支领先两次提交。

通过两次提交在远程之前分支

我们可以看到我们的分支领先于远程两次提交。 我们对提交本身感兴趣。

从技术上讲,我们希望获得 origin/mainHEAD 之间的所有提交。 我们将运行 git log 命令,如下所示:

$ git log origin/main..HEAD

获取 origin main 和 head 之间的所有提交

我们可以使用以下命令输出差异:

$ git difftool origin/main..HEAD

您可以使用 git diff origin/main,但您将使用 Git 的默认差异接口。 我们使用 git difftool 打开 Meld,我们默认的 difftool 和 mergetool。

或者,您可以运行 git log 命令,如下所示。

$ git log --branches --not --remotes

这将列出所有尚未推送到远程的分支中的所有提交。

另一个方便的命令是:

$ git log @{u}..

简而言之,您可以在本地存储库中查看未发布的提交。 git log 命令与讨论的几个标志相结合,可以为您提供需要推送的提交的完整列表。

查看笔记

扫码一下
查看教程更方便