我如何查看我所做的任何尚未推送到远程存储库的本地提交?有时,git状态会显示我的分支是在origin/master之前提交的X,但并不总是这样。
这是我安装Git的bug,还是我遗漏了什么?
我如何查看我所做的任何尚未推送到远程存储库的本地提交?有时,git状态会显示我的分支是在origin/master之前提交的X,但并不总是这样。
这是我安装Git的bug,还是我遗漏了什么?
当前回答
显示本地但非上游的所有提交:
git log @{u}..
@{u} 或@{upstream}表示当前分支的上游分支(有关详细信息,请参阅git-rev-parse-help或git-help修订版)。
其他回答
如果未推出的提交数量是一个位数,通常是一个,那么最简单的方法是:
$ git checkout
git的回应是告诉你,相对于你的起源,你“领先N个提交”。所以现在在查看日志时,请记住这个数字。如果您“领先3次提交”,则历史上前3次提交仍然是私有的。
git diff origin
假设您的分支被设置为跟踪原点,那么这应该会向您显示差异。
git log origin
将向您提供提交的摘要。
要查看尚未推送的所有分支上的所有提交,请执行以下操作:
git log --branches --not --remotes
要查看每个分支的最新提交以及分支名称,请执行以下操作:
git log --branches --not --remotes --simplify-by-decoration --decorate --oneline
显示本地但非上游的所有提交:
git log @{u}..
@{u} 或@{upstream}表示当前分支的上游分支(有关详细信息,请参阅git-rev-parse-help或git-help修订版)。
这对我来说效果更好:
git log --oneline @{upstream}..
or:
git log --oneline origin/(remotebranch)..