我想要取消
中文件的所有输出 dir/*
使用命令时
git diff
我决定遵循以下建议 Excluding files from git-diff
方法1。
添加到 .git / config
[alias]
mydiff = !git diff -- $(git diff --name-only | grep -Ev "dir/")
并使用
git mydiff
按预期工作,从而解决了我的问题。但是,我想使用方法2。
方法2。
添加到 .gitattributes
dir/* -diff
然后使用
git diff
生成输出
diff --git a/dir/1 b/dir/1
deleted file mode 100644
index 05e9130..0000000
...
问题 如何抑制dir /?
中所有文件的不需要的输出答案 0 :(得分:1)
您使用设置查看输出的原因是dir/* -diff
仅将dir
中的文件标记为二进制文件,因此文本差异不适用于它们(请参阅man 5 gitattributes
)。
要抑制dir
中文件的任何输出,您必须定义一个外部差异驱动程序,如下所示:
指定新的“无声”(您可以选择您的名字)差异驱动程序:
$ cat .gitattributes
dir/* diff=silent
定义“无声”差异功能:
$ tail -n2 .git/config
[diff "silent"]
command = "true"
这应该可以解决问题。