我如何查看我所做的任何尚未推送到远程存储库的本地提交?有时,git状态会显示我的分支是在origin/master之前提交的X,但并不总是这样。

这是我安装Git的bug,还是我遗漏了什么?


当前回答

如果未推出的提交数量是一个位数,通常是一个,那么最简单的方法是:

$ git checkout

git的回应是告诉你,相对于你的起源,你“领先N个提交”。所以现在在查看日志时,请记住这个数字。如果您“领先3次提交”,则历史上前3次提交仍然是私有的。

其他回答

您可以使用git-log执行此操作:

git log origin/master..

这假设origin是上游远程的名称,master是上游分支的名称。在..之后删除任何修订名称。。暗示HEAD,它列出了尚未推送的新提交。

git cherry -v

这将列出您的本地评论历史记录(尚未推送)以及相应的消息

git diff origin

假设您的分支被设置为跟踪原点,那么这应该会向您显示差异。

git log origin

将向您提供提交的摘要。

gitbranch-v将显示每个本地分支是否“超前”。

在当前分支中查找未推送提交的便捷数字别名:

alias unpushed = !GIT_CURRENT_BRANCH=$(git name-rev --name-only HEAD) && git log origin/$GIT_CURRENT_BRANCH..$GIT_CURRENT_BRANCH --oneline

它的基本作用是:

git log origin/branch..branch

而且还确定当前分支名称。