You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Git Diff仅显示差异颜色无代码,SQL文件修改遇.gitattributes问题求助

Git Diff无法展示SQL文件变更内容的解决办法

问题背景

修改SQL文件中@enabled的值从1改为0后,Git Diff仅显示差异标记颜色,看不到具体代码变更;未配置.gitattributes时,还会报错:

file suppressed by a .gitattributes entry or the file's encoding is unsupported

解决步骤

1. 配置项目级.gitattributes文件

在项目根目录创建或编辑.gitattributes文件,添加以下规则:

*.sql text diff

这行规则会告诉Git:将所有.sql文件识别为文本文件,并且允许生成差异对比内容。

添加完成后,提交这个配置文件到仓库:

git add .gitattributes && git commit -m "Set SQL files as text for Git diff"

2. 排查编码兼容性问题(若步骤1无效)

如果配置后仍无法正常展示diff,检查SQL文件的编码格式:

  • 确保文件使用Git支持的编码(推荐UTF-8)
  • 若文件为其他编码(如GBK),可在.gitattributes中指定编码:
    *.sql text diff encoding=GBK
    

3. 验证修复效果

再次修改SQL文件后,执行git diff命令,即可看到具体的代码变更内容,不会再出现仅显示颜色或报错的情况。

原因说明

Git默认可能将SQL文件识别为二进制文件,或者受全局.gitattributes规则影响,导致无法生成文本diff。通过项目级.gitattributes配置,强制Git将SQL文件按文本处理,就能解决这个问题。

内容的提问来源于stack exchange,提问作者O98

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 16:35:23