如何查看我所作的任何还没有推送到远程存储库的本地提交? 偶尔, git status
会打印出个人分支是X提交在origin/master
,但并不是老是如此。 python
这是我安装Git的错误,仍是我错过了什么? git
有一个名为unpushed的工具能够扫描指定工做目录中的全部Git,Mercurial和Subversion存储库,并显示ucommited文件列表和未提交的提交。 在Linux下安装很简单: github
$ easy_install --user unpushed
要么 bash
$ sudo easy_install unpushed
安装系统范围。 ide
用法也很简单: 工具
$ unpushed ~/workspace * /home/nailgun/workspace/unpushed uncommitted (Git) * /home/nailgun/workspace/unpushed:master unpushed (Git) * /home/nailgun/workspace/python:new-syntax unpushed (Git)
有关更多信息,请参阅unpushed --help
或官方说明 。 它还有一个cronjob脚本unpushed-notify
用于屏幕上未通知和未刷新的更改通知。 spa
我使用如下别名来获取已提交但还没有推送的文件列表(以及状态)(对于当前分支) code
git config --global alias.unpushed \ "diff origin/$(git name-rev --name-only HEAD)..HEAD --name-status"
而后就是: get
git unpushed
我建议你去看看脚本https://github.com/badele/gitcheck ,我编写了这个脚本,一次性检查你全部的git存储库,它显示谁没有提交,谁没有推/拉。 it
这是一个样本结果
git diff origin
假设您的分支设置为跟踪原点,那么应该显示差别。
git log origin
将为您提供提交的摘要。
你能够用git log
作到这一点:
git log origin..
假设origin
是您的上游的名称,在..
后面留下任何修订名称隐含HEAD
,它列出了还没有推送的新提交。