例如,我提交了一些文件,第二天又提交了一些文件,等等。几天后,我想查看所有提交的文件,并查看它们与远程存储库的差异。请注意,我没有推任何东西。我只是想验证一下,如果我推一些东西,那么它会像我期望的那样进入远程仓库。
dw1jzc5e1#
假设你在本地分支master上,它正在跟踪origin/master:
master
origin/master
git diff --stat origin/master..
oxiaedzo2#
在这里你会找到你的答案:如何使用Git查找本地和远程之间的更改对于懒惰者:1.使用“git log origin..HEAD”1.使用“git fetch”,然后使用“git log HEAD..origin”。您可以使用列出的提交id来挑选单个提交。当然,上面的假设是“origin”是远程跟踪分支的名称(如果您使用clone和默认选项的话)。
bkhjykvo3#
push命令有一个-n/--dry-run选项,它将计算需要推送的内容,但实际上并不执行。这样行吗
push
-n
--dry-run
li9yvcax4#
我不擅长Git,但这就是我的工作。这并不一定与远程存储库进行比较,但是您可以使用来自远程的适当提交散列修改git diff。假设你做了一个你没有推的承诺...首先找到最后两个提交...
git diff
git log -2
这首先显示最后一次提交,并从那里下降…
[jason:~/git/my_project] git log -2 commit ea7937edc8b10 Author: xyz Date: Wed Jul 27 14:06:41 2016 -0500 Made a change in July commit 52f9bf7956f0 Author: xyz Date: Tue Jun 14 14:29:52 2016 -0500 Made a change in June
现在只需要使用两个提交哈希(我缩写了)来运行一个diff:
git diff 52f9bf7956f0 ea7937edc8b10
wd2eg0qa5#
git diff HEAD origin/master其中,origin是远程存储库,master是您将推送的默认分支。另外,在diff之前执行git fetch,这样您就不会与过时的原始/主服务器发生差异。P.S.我也是git的新手,所以如果上面的错误,请纠正。
git diff HEAD origin/master
origin
diff
git fetch
kx1ctssn6#
前面的答案都很好,但都显示origin/master。这些天来,遵循最佳实践,我很少直接在主分支上工作,更不用说从源代码库了。所以如果你和我一样在分支工作,这里有一些提示:1.假设你已经在一个分支上了。如果没有,git checkout 那个分支
mqkwyuun7#
git diff @{u}..
这是当前提交到上游分支的差异。如果您只关心修改过的文件名,那么
git diff @{u}.. --name-only
7条答案
按热度按时间dw1jzc5e1#
假设你在本地分支
master
上,它正在跟踪origin/master
:oxiaedzo2#
在这里你会找到你的答案:
如何使用Git查找本地和远程之间的更改
对于懒惰者:
1.使用“git log origin..HEAD”
1.使用“git fetch”,然后使用“git log HEAD..origin”。您可以使用列出的提交id来挑选单个提交。
当然,上面的假设是“origin”是远程跟踪分支的名称(如果您使用clone和默认选项的话)。
bkhjykvo3#
push
命令有一个-n
/--dry-run
选项,它将计算需要推送的内容,但实际上并不执行。这样行吗li9yvcax4#
我不擅长Git,但这就是我的工作。这并不一定与远程存储库进行比较,但是您可以使用来自远程的适当提交散列修改
git diff
。假设你做了一个你没有推的承诺...
首先找到最后两个提交...
这首先显示最后一次提交,并从那里下降…
现在只需要使用两个提交哈希(我缩写了)来运行一个diff:
wd2eg0qa5#
git diff HEAD origin/master
其中,
origin
是远程存储库,master
是您将推送的默认分支。另外,在diff
之前执行git fetch
,这样您就不会与过时的原始/主服务器发生差异。P.S.我也是git的新手,所以如果上面的错误,请纠正。
kx1ctssn6#
前面的答案都很好,但都显示origin/master。这些天来,遵循最佳实践,我很少直接在主分支上工作,更不用说从源代码库了。
所以如果你和我一样在分支工作,这里有一些提示:
1.假设你已经在一个分支上了。如果没有,git checkout 那个分支
或者更简单地说,使用HEAD:
mqkwyuun7#
这是当前提交到上游分支的差异。如果您只关心修改过的文件名,那么