Linux git diff——用字符串而不是文件路径表示numstat
我试图在Linux(Debian Docker容器)上运行Linux git diff——用字符串而不是文件路径表示numstat,linux,bash,git,diff,git-diff,Linux,Bash,Git,Diff,Git Diff,我试图在Linux(Debian Docker容器)上运行git diff--no index--numstat,但我没有找到实现这一点的方法。本质上,我希望以字符串形式传递文件的内容,而不是它们的文件路径。目标是从--numstat标志中检索统计数据 此命令应在git存储库/目录之外的Linux上可执行。到目前为止,我发现了两种解决方案缺少前面的要求: git diff--no index--numstat/dev/fd/3/dev/fd/4 3解决方案1的原因。不起作用的原因是/dev/fd
git diff--no index--numstat
,但我没有找到实现这一点的方法。本质上,我希望以字符串形式传递文件的内容,而不是它们的文件路径。目标是从--numstat
标志中检索统计数据
此命令应在git
存储库/目录之外的Linux上可执行。到目前为止,我发现了两种解决方案缺少前面的要求:
git diff--no index--numstat/dev/fd/3/dev/fd/4 3解决方案1的原因。不起作用的原因是/dev/fd/3
和/dev/fd/4
是符号链接,git diff
不跟随符号链接,而是使用链接目标字符串作为“内容”
将字符串直接传递给git diff
而不是文件的唯一方法是作为stdin,它显然只适用于其中一个文件。因此,我认为只有两种可能的解决方案可以解决您的问题:
首先将字符串写入(临时)文件,然后将其传递到git diff
1的另一个较短版本。使用将是:
git-diff--no-index--numstat我是否正确理解您想将git
用作diff工具?如果是这样,您可以在Linux下使用diff
或diffstat
,请参见例如。