如何 git-diff 单个暂存文件与其他分支中的相同文件
How to git-diff a single, staged file with same file in other branch
如果我理解正确的话,如果我理解
git diff master devel ./my_file
我得到了分支的两个 HEAD 之间的差异。但是,如果我在 master
中进行了更改并将它们暂存,我想我可以通过
获得未暂存文件和另一个分支中的相应文件之间的差异
$ git diff --cached master devel ./my_file
但我收到以下错误:
usage: git diff [<options>] [<commit> [<commit>]] [--] [<path>...]
那么获取文件中的暂存更改与另一个分支中的相应文件之间的差异的正确方法是什么?
尝试以下语法:
git diff --cached devel -- my_file.ext
这应该比较 my_file.ext
,因为它在 devel
分支的 HEAD 与 master
中的当前阶段(假设你 运行 这个命令在 master
分支)。
此命令中发生了很多事情,但请注意 --cached
不是指 devel
,这是一个不适用阶段概念的提交。相反,--cached
指的是跟在 --
分隔符后的文件 my_file.ext
。
此命令对应于 manual 中的以下模式:
git diff [--options] --cached [<commit>] [--] [<path>…]
这里devel
是提交,my_file.ext
是文件路径。
如果我理解正确的话,如果我理解
git diff master devel ./my_file
我得到了分支的两个 HEAD 之间的差异。但是,如果我在 master
中进行了更改并将它们暂存,我想我可以通过
$ git diff --cached master devel ./my_file
但我收到以下错误:
usage: git diff [<options>] [<commit> [<commit>]] [--] [<path>...]
那么获取文件中的暂存更改与另一个分支中的相应文件之间的差异的正确方法是什么?
尝试以下语法:
git diff --cached devel -- my_file.ext
这应该比较 my_file.ext
,因为它在 devel
分支的 HEAD 与 master
中的当前阶段(假设你 运行 这个命令在 master
分支)。
此命令中发生了很多事情,但请注意 --cached
不是指 devel
,这是一个不适用阶段概念的提交。相反,--cached
指的是跟在 --
分隔符后的文件 my_file.ext
。
此命令对应于 manual 中的以下模式:
git diff [--options] --cached [<commit>] [--] [<path>…]
这里devel
是提交,my_file.ext
是文件路径。