文件的工作副本与其在另一个分支上的版本之间的 git diff

HEK*_*KTO 2 git

我知道以前曾提出过类似的问题并得到了回答,但我尝试过的任何方法都不适合我。我在我的开发分支上,我想将一个文件从 master 分支的头部复制到我的工作目录,所以我执行以下操作:

git checkout origin/master -- <my relative path>
Run Code Online (Sandbox Code Playgroud)

复制工作正常,我可以看到文件时间戳已更新。要检查文件内容,我调用git diff

git diff <my branch> origin/master -- <my relative path>
Run Code Online (Sandbox Code Playgroud)

我仍然看到我的分支和origin/master.

我究竟做错了什么?

(git版本1.7.9.5)

Gor*_*son 5

git diff <my branch> origin/master -- <my relative path>\n
Run Code Online (Sandbox Code Playgroud)\n\n

这将区分已提交给分支机构的内容,与您本地的更改无关。git-diff 文档描述了您想要执行的操作:

\n\n
\n
git diff [--options] <commit> [--] [<path>\xe2\x80\xa6]\n
Run Code Online (Sandbox Code Playgroud)\n\n

此表单用于查看工作树中相对于命名的<commit>. 您可以使用 HEAD 将其与最新提交进行比较,或者使用分支名称与不同分支的提示进行比较。

\n
\n\n

尝试这个:

\n\n
git diff origin/master -- <my relative path>\n
Run Code Online (Sandbox Code Playgroud)\n