Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
查找已提交但未推送的git文件_Git - Fatal编程技术网

查找已提交但未推送的git文件

查找已提交但未推送的git文件,git,Git,正常的git工作流是 编辑文件 git添加 git提交 git推送 我试图找到一个命令,它告诉我是否有任何已提交但未推送的内容。 我试过了 git diff --stat --cached master 但这在推送之前和之后都会得到相同的结果,但我认为推送会将更改的文件从临时区域中删除 请有人告诉我这方面的正确命令。当您已提交但尚未推送时,您的本地分支位于其上游分支(通常为origin/BRANCHNAME)的前面(或已经偏离) 一般来说,您可以通过 git status 这会说 On

正常的git工作流是

  • 编辑文件
  • git添加
  • git提交
  • git推送
我试图找到一个命令,它告诉我是否有任何已提交但未推送的内容。 我试过了

git diff --stat --cached master
但这在推送之前和之后都会得到相同的结果,但我认为推送会将更改的文件从临时区域中删除


请有人告诉我这方面的正确命令。

当您已提交但尚未推送时,您的本地分支位于其上游分支(通常为
origin/BRANCHNAME
)的前面(或已经偏离)

一般来说,您可以通过

git status
这会说

On branch master
Your branch is ahead of 'origin/master' by 1 commit.
  (use "git push" to publish your local commits)
git diff --stat origin/master..HEAD
如果您想查看具体更改了哪些文件,请执行以下操作

On branch master
Your branch is ahead of 'origin/master' by 1 commit.
  (use "git push" to publish your local commits)
git diff --stat origin/master..HEAD

将向您显示(如果您希望脚本处理任何分支和远程分支,则通用版本更难)。

git status
将显示您的本地分支是否与远程分支存在分歧。Doh!!谢谢你的指点我该如何把这个问题标记为已解决?等等,我刚刚意识到一个实际的答案可能会有用。。。然后,如果答案有帮助,则旁边应该有一个勾号/复选标记,您可以选择。
git remote
列出了所有远程设备,这些设备肯定不是您想要的(您需要当前分支的远程设备)。可能最简单的方法是git diff--stat@{u}..@-也就是说,从上游到
头部
。呃,你说得对-我忘了很好地得到它是多么痛苦