两个远程分支上的gitdiff显示不同但相同的文件



运行git diff origin/integration...origin/dev-userX -- path/to/file.cpp部分产生

--- a/path/to/file.cpp
+++ b/path/to/file.cpp
@@ -3,14 +3,12 @@
#include "foo.h"
#include "bar.h"
+#include <io.h>

但如果我直接查看github.com上的推送分支,两个文件都包含#include<io.h>

问题:

  1. 我为什么看到这个
  2. "origin"语法是否总是意味着查看远程分支,而不是本地分支
  3. 即使"origin"语法从未被拉取或以任何方式带到本地,它们也能工作吗

感谢

想象一下你的图是这样的:

A   B
 /
X

假设提交A是分支origin/integration,提交B是分支origin/dev-userX。如果提交CCD_ 6时的文件没有行"#包括<io.h>";,但是AB中的每一个提交都添加了这一行,那么您将看到您所看到的内容。(根据评论,情况似乎就是这样。(

当你用3个点(git diff A...B(进行差异时,你基本上是在说:

显示XB之间的更改。

当你使用2个点(git diff A..B(时,你基本上是在说:

显示AB之间的更改。

这里有更多信息,特别是我的总结答案。

关于你关于";"原点";,以CCD_ 15开头的分支表示您的";远程跟踪分支";。这些基本上是基于上次提取远程存储库(无论托管在哪里(上分支的副本。每次提取时,您都会连接到远程repo并更新这些远程分支的本地副本。

最新更新