git - 如何知道对 master 的最新提交是否已推送到远程?

标签 git github merge branch commit

我已经将一个分支 merge 到 master 中,现在我可以在我的 git log 中看到它

一段时间过去了,现在我想知道我之前是否也将 master(通过该提交)推送到远程。如何判断是否已推送?

我可以想到一些解决方法,例如在其他地方重新克隆存储库,或者重置和检查然后重新 merge ,但我觉得可能有更简单的答案。

仅供引用,这与 How can I know in git if a branch has been already merged into master? 不同据我所知它已被 merge ,只是不知道远程推送。

最佳答案

> git status

如果输出是

# On branch master
nothing to commit, working directory clean

那么你已经推送了当前的提交。

如果输出以

开头
# On branch master
# Your branch is ahead of 'origin/master' by 1 commit.
#   (use "git push" to publish your local commits)

然后您有一个尚未推送的本地提交。您看到这一点是因为远程分支 origin/master 指向最后推送到 origin 的提交。但是,您的分支 在 'origin/master' 之前,这意味着您有一个本地提交是在最后一次推送提交之后创建的。

如果你感兴趣的提交不是最新的,那么你可以这样做

> git log --decorate --oneline

找出有问题的提交是在 origin/master 指向的提交之前还是之后。
如果提交发生在(在日志中比)origin/master 之后,那么它还没有被推送。

关于git - 如何知道对 master 的最新提交是否已推送到远程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21989388/

相关文章:

github - 在带有 github push 事件的代码构建中,git show -s 错误消息致命 : unable to parse commit <sha>

github - 在 GitHub 上查看文件的 GitHub 字符限制或行长度是多少?

python - 当合并的行不匹配时,如何填写 pandas merge 中的值

git - 当团队成员进行提交时,如何阻止 Git 进行额外的 merge 提交

Java-使用交替字符合并两个字符串,同时保留运行

Git 选项卡完成在 mac 上的 zsh 中不起作用

git - 使用 Jenkins 生成构建版本

Git Bash (mintty) 在 Windows 10 操作系统上速度极慢

git - 如何让 Git 将文件视为二进制文件?

html - 自定义github页面的预览图像