微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

VS Code:git 错误地突出显示更改的行

如何解决VS Code:git 错误地突出显示更改的行

VS Code 突出显示了一些“更改”的行:

"changed" lines example

但同时Activity Bar并没有看到任何变化:

enter image description here

还有 git status 输出

On branch master
Your branch is up to date with 'origin/master'.

nothing to commit,working tree clean

更改文件编码后出现此问题:
存储库中的所有文件都使用 Windows-1251 进行编码。
working-tree-encoding 中的属性 .gitattributesfiles.encoding 中的 settings.json 相同。

解决方法

这里可能发生的情况是您已经告诉 Git 对您的文件使用一种编码 (windows-1251),但您的编辑器正在使用另一种编码(可能是 UTF-8)。设置工作树编码告诉 Git 它应该在内部存储 UTF-8,但是在检出和添加文件时它应该使用不同的编码。

请注意,如果您已修改 .gitattributes 中的值但尚未运行 git add --renormalize .,然后进行提交,则也可能发生这种情况。也有可能现在一切都设置正确,但是之前有人签入了不正确的代码,现在您有不同之处。

请注意,如果没有令人信服的理由,您应该尽可能使用 UTF-8(不带字节顺序标记)。工作树编码可以帮助那些必须使用无法处理 UTF-8 的遗留工具的人,例如 Windows 上的某些工具(总是需要 UTF-16)。如果您的工具能够处理 UTF-8(并且在 2021 年,它绝对应该能够处理),那么 UTF-8 是您最好的选择。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。