尝试改编想要从“想要从git diff”中排除文件的--stat
标志的答案并失败- 接受的答案(创建驱动程序)似乎仅是unix(重定向到/ bin / true,无论这意味着什么)加上它创建了一个驱动程序,并且我正在寻找一个开关来暂时禁用文件(或某些文件)的差异时,将其永久分配给文件类型。
脚本解决方案:
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
在使'git log'忽略某些路径的更改中描述的exclude pathspec技巧在这里起作用:
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”部分下的gitglossary
文档中进行了描述。请注意,排除功能是Git 1.9版中的新功能(直到1.9.2才稍作中断)。领先的/
是一个别名top
和!
是一个别名exclude
,与需要括号的长格式。使用单字符别名时,实际路径名前的结尾冒号是可选的,但使用括号时则禁止使用冒号(此规则每次都会使我烦恼,我一直想使用:(exclude):...
而不是:(exclude)...
)。上面的(top)
和(exclude)
pathspec组件周围的单引号是为了防止括号被(Unix / Linux)Shell解释。Windows Shell对于哪些字符需要保护存在不同的想法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句