红点标记 BitBucket 差异视图

Sel*_*mir 8 git encoding bitbucket

我们最近将源代码从 SVN 和 TFVC 迁移到 Git。我们的代码库主要由在 VS2017 中编辑的 C# 和 VB.NET 文件组成。

我们的 Git 存储库托管在 BitBucket 中,但我们存在差异问题,如下所示,BitBucket 在我们的文件开头显示一个小红点

在此处输入图片说明

在悬停时,\ufeff显示在工具提示中,我知道它是一个表示零宽度不间断空格 (ZWNBSP) 的字符。

在个人方面,我将所有源代码托管在 GitHub 上,从未遇到过类似问题。

那么,如果我们保持原样,我们会有什么风险?我们还有哪些其他选择?

预先感谢您的帮助,Roxtar

frm*_*elz 7

我在来自 VS2017 项目的 xml 文件上的 bitbucket 差异中有红点。

红点表示 Unicode 代码点 U+FEFF ( \ufeff) 字节顺序标记 (BOM)。就我而言,当我在 Visual Studio 中编辑一个 xml UTF-8 文件时,它将 BOM 序列添加到文件的开头。

可以通过在 Visual Studio 中重新保存没有签名的文件来删除 BOM(红点)。在 VS (2017) 中打开文件,然后文件 -> 另存为。在“保存”按钮上有一个下拉选项“使用编码保存”

它默认为“Unicode(带签名的 UTF-8)”。更改为“Unicode(无签名的 UTF-8”)

git diff 将看到删除 \ufeff


Sel*_*mir 3

我整个周末都在调查这个问题,得出的结论是我们不应该担心这个问题,如果你面临这个问题,你也不应该担心,如果你正在阅读这篇文章,你可能会担心。

这是我所有的测试用例和相关结果:

  • 全新 BitBucket 安装上的相同代码 =>
  • GitHub 上的同一段代码 =>
  • 在 BitBucket 中使用 VSCode 创建的新 C# 文件 =>
  • 在 BitBucket 中使用 Visual Studio 2017 创建的新 C# 文件 =>
  • 在 GitHub 中使用 Visual Studio 2017 创建的新 C# 文件 =>

我们真的很担心这一点,我们认为我们的源迁移引入了编码问题,并且将来我们将在旧文件和新创建的文件之间面临编码地狱。

但使用新创建的 C# 文件进行测试表明 VS2017 在所有文件中引入了此 ZWNBSP 字符。因此,这在将来应该不会成为问题,因为这是 VS2017 源文件的预期操作。

所以,结论是,BitBucket 显示了这个带有红点的 ZWNBSP,当 GitHub 没有显示任何内容时,这会让人感到害怕,我认为 BB 至少可以改变点的颜色。

  • 如果您想去掉红点,因为它仍然表明那里有不必要的字符:/sf/ask/510852191/ -文件-如何删除它们 (2认同)