git diff --stat 排除某些文件
git diff --stat exclude certain files
尝试改编来自 Want to exclude file from "git diff" for the --stat
flag and failing - the accepted answer 的答案(创建驱动程序)似乎仅适用于 unix(重定向到 /bin/true,无论这意味着什么)加上它创建驱动程序并将其分配给文件类型永久地,当我正在寻找一个开关来暂时禁用文件(或更确切地说某些文件)的差异时。
脚本 solution:
git diff `git status -s |grep -v ^\ D |grep -v file/to/exclude.txt |cut -b4-`
实际上调用 git status 并编辑它的输出——而我想要的是指示 git diff 本身在计算(简单的)--stat 时忽略一些文件(只是更改了行) .我浏览了 git-diff 文档,但似乎找不到这样的选项。有人帮帮我吗?
$ git --version
git version 2.6.1.windows.1
Making 'git log' ignore changes for certain paths 中描述的排除路径规范技巧在这里起作用:
git diff --stat -- . ':(exclude)file/to/exclude.txt'
或者,如果您在子目录中:
git diff --stat -- :/ ':(exclude,top)file/to/exclude.txt'
后者可以有多种拼写方式。例如,这也有效:
git diff --stat ':(top)' :!/file/to/exclude.txt
一样:
git diff --stat :/: :!/:file/to/exclude.txt
这些在 "pathspec" 部分的 the gitglossary
documentation 中进行了描述。请注意,排除功能是 Git 版本 1.9 中的新增功能(在 1.9.2 之前略有损坏)。前导 /
是 top
的别名,!
是 exclude
的别名,长格式需要括号。在使用单字符别名时,实际路径名之前的尾随冒号是可选的,但在使用括号时是禁止的(这条规则每次都让我感到困惑——我一直想使用 :(exclude):...
而不是 :(exclude)...
)。上面 (top)
和 (exclude)
pathspec 组件周围的单引号是为了保护括号不被 (Unix/Linux) shells 解释; Windows shell 可能对哪些角色需要保护有不同的看法。
尝试改编来自 Want to exclude file from "git diff" for the --stat
flag and failing - the accepted answer 的答案(创建驱动程序)似乎仅适用于 unix(重定向到 /bin/true,无论这意味着什么)加上它创建驱动程序并将其分配给文件类型永久地,当我正在寻找一个开关来暂时禁用文件(或更确切地说某些文件)的差异时。
脚本 solution:
git diff `git status -s |grep -v ^\ D |grep -v file/to/exclude.txt |cut -b4-`
实际上调用 git status 并编辑它的输出——而我想要的是指示 git diff 本身在计算(简单的)--stat 时忽略一些文件(只是更改了行) .我浏览了 git-diff 文档,但似乎找不到这样的选项。有人帮帮我吗?
$ git --version
git version 2.6.1.windows.1
Making 'git log' ignore changes for certain paths 中描述的排除路径规范技巧在这里起作用:
git diff --stat -- . ':(exclude)file/to/exclude.txt'
或者,如果您在子目录中:
git diff --stat -- :/ ':(exclude,top)file/to/exclude.txt'
后者可以有多种拼写方式。例如,这也有效:
git diff --stat ':(top)' :!/file/to/exclude.txt
一样:
git diff --stat :/: :!/:file/to/exclude.txt
这些在 "pathspec" 部分的 the gitglossary
documentation 中进行了描述。请注意,排除功能是 Git 版本 1.9 中的新增功能(在 1.9.2 之前略有损坏)。前导 /
是 top
的别名,!
是 exclude
的别名,长格式需要括号。在使用单字符别名时,实际路径名之前的尾随冒号是可选的,但在使用括号时是禁止的(这条规则每次都让我感到困惑——我一直想使用 :(exclude):...
而不是 :(exclude)...
)。上面 (top)
和 (exclude)
pathspec 组件周围的单引号是为了保护括号不被 (Unix/Linux) shells 解释; Windows shell 可能对哪些角色需要保护有不同的看法。