git - 如何在使用 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 存储库根目录的 .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 文件更改!
推荐阅读
- javascript - Javascript 中 let 和 var 的奇怪行为
- reactjs - ANTD List 组件集成
- sql - SQL 权限行为异常
- javascript - 如何使正则表达式返回字符串中匹配的值而不是Javascript中的布尔值
- node.js - nodejs中单个异步函数中的多个等待
- r - 一次累加和减法时带有重置的条件cumsum
- css - Jumbotron 背景图像不起作用。我究竟做错了什么?
- javascript - 从字符串查询中获取命名参数
- sql - DATEDIFF - 我的 SQL 查询有什么问题?
- flutter - ListvVew 中的文本被换行而不是溢出