【发布时间】:2014-01-15 12:42:37
【问题描述】:
我想要一个尚未合并到 master 的分支中所有更改的差异。
我试过了:
git diff master
git diff branch..master
git diff branch...master
但是,在每种情况下,差异都包含 master 中尚未合并到我的分支中的内容。
有没有办法在我的分支和 master 之间进行差异,排除 master 中尚未合并到我的分支中的更改?
【问题讨论】:
-
如果你翻阅第二个版本,你会得到你想要的:
git diff master..branch。如果您在分支上,可以将其缩短为git diff master..。r1..r2语法是^r1 r2的缩写,意思是“向我展示所有来自r2并且无法从r1访问的东西”。git help gitrevisions提供有关您可以使用的各种语法的信息。 -
在阅读了有关
git diff的...语法的更多信息后,我扩展了我的答案。 @jszakmeister,您的评论是错误的,因为gitrevisions中描述的修订范围与git diff无关。 Diff 比较历史上的两个点,不能使用范围。 -
你是对的。我总是忘记
git diff与其他命令的工作方式不同......我觉得令人沮丧的事实。 :-( -
确保在比较之前更新 master 的本地副本
标签: git version-control merge diff git-diff