我怎样才能看到我要用git推?

有没有办法看到,如果我做了一个git push命令会git push什么?

我所描绘的就像Github的“pull request”特性的“Files Changed”标签。 当我发出一个拉请求,我可以看看,如果他们接受我的拉请求将被拉入: github聚合变化的例子

命令行是好的,但我更喜欢某种graphics用户界面(如上面的截图)。

要列出要推送的文件,请运行:

 git diff --stat --cached [remote/branch] 

例:

 git diff --stat --cached origin/master 

对于要推送的文件的代码diff,运行:

 git diff [remote repo/branch] 

要查看将要更改的文件的完整文件path,请运行:

 git diff --numstat [remote repo/branch] 

如果你想在GUI中看到这些差异,你将需要为此configurationgit。 请参阅如何使用visual diff程序查看“git diff”输出? 。

总有一些干旱运行:

 git push --dry-run 

除了实际发送数据外,它将完成所有的工作。

如果你想要更多的graphics化视图,你可以select一些选项。

TIG和git附带的gitk脚本都显示本地副本的当前分支以及远程或来源的分支。

替代文字

所以你在源码之后提交的任何提交都将被提交。

通过inputgitk&打开你想要推送的分支的gitk& ,然后看看远程设备和你要推送给远程设备之间的区别,select你的本地提交的提交,然后右键单击远程并select“Diff this – > selected”: 替代文字

要简单地列出等待被推送的提交这是你将会记住 的提交

 git cherry -v 

显示SHA1旁边的提交主题。

你可能想运行git difftool origin/master... 应显示当前分支上不在原始/主分支上的内容的统一差异,并将其显示在您select的graphics差异工具中。 要最新,请先运行git fetch

将其推入远程回购之前比较本地版本的一种方法(在干运行中推送):

使用TortoiseGit:
右键单击根文件夹项目> TortoiseGit>以前版本的差异>
对于版本2,selectrefs/remotes/origin/master

尝试git diff origin/master..master (假设origin/master是你的上游)。 不像git push --dry-run ,即使你没有对上游的写入权限,这仍然可以工作。

使用git gui ,在那里你可以看到你的实际提交中改变的列表。 你也可以使用gitk为reflog提供一个简单的界面。 只是比较remotes/...master看,会推什么。 它提供了一个类似于你的截图的界面。

这两个程序都包含在git中。

如果您使用的是Mac OS X,那么我会build议您获得Tower,这是一个让我对Git感到高兴的奇妙程序。 我现在不得不记住terminal命令,它提供了一个伟大的GUI来查看,跟踪和解决文件的差异。

不,我不隶属于他们,我只是使用他们的软件,真的很喜欢它。

http://www.git-tower.com/

要查看哪些文件已更改, 查看与master分支相比的实际代码更改,可以使用:

 git diff --stat --patch origin master 

您可以通过以下方式列出提交:

 git cherry -v 

然后与下面的命令进行比较,其中^的数量等于提交数量(在本例中为2提交):

 git diff HEAD^^