我怎样才能看到我要用git推?
有没有办法看到,如果我做了一个git push
命令会git push
什么?
我所描绘的就像Github的“pull request”特性的“Files Changed”标签。 当我发出一个拉请求,我可以看看,如果他们接受我的拉请求将被拉入:
命令行是好的,但我更喜欢某种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来查看,跟踪和解决文件的差异。
不,我不隶属于他们,我只是使用他们的软件,真的很喜欢它。
要查看哪些文件已更改, 并查看与master
分支相比的实际代码更改,可以使用:
git diff --stat --patch origin master
您可以通过以下方式列出提交:
git cherry -v
然后与下面的命令进行比较,其中^的数量等于提交数量(在本例中为2提交):
git diff HEAD^^