首页 > 解决方案 > 如何在使用 git diff 时跳过一些文件?

问题描述

我想从 git diff 中跳过一些文件。我不能将它们放在 .gitignore 列表中,因为我需要它们并不断更新。

.gitattributes 似乎为我解决了这个问题。但我不清楚如何去做。

我曾尝试将签入后的文件放入.gitignore。但我注意到 git 在获取 git diff 时仍然会考虑来自 .gitignore 的那些文件。

我想要这样的东西但它不适用于我的 git 版本(即 git 版本 2.14.1.windows.1)

这个问题讨论了通过将要跳过的文件作为参数传递给 git diff 命令来跳过 git diff 中的文件。但如果我这样做,我必须跟踪所有文件。我想将跳过列表放在某种 .git_______ 文件中,git 将在获取 git diff 时隐式使用该文件跳过

标签: git

解决方案


我们可以在 git 存储库根目录的 .gitattributes 文件中添加所有要跳过的文件

在 Windows 上使用此命令git config diff.nodiff.command C:/"Program\ Files"/Git/usr/bin/true,在 Mac 上使用git config diff.nodiff.command usr/bin/true 设置 git config。

.gitattributes 内容可以如下:

Readme.md diff=nodiff
xzy.txt diff=nodiff

那么这应该在进行 git diff 时跳过 Readme.md 和 xyz.txt 文件更改!


推荐阅读