1

我已经将一个存储库从 Mac 上传到 git 服务器,其中存储库包含带有亚洲字符的 html 文件,现在当我在 Windows7 中克隆同一个存储库时,html 文件显示损坏的数据,而我可以在 gitweb 上看到 git 上的文件服务器是一个很好的。任何想法,我做错了什么以及如何解决它?

以下是我的 git 配置

[core]
    repositoryformatversion = 0
    filemode = false
    bare = false
    logallrefupdates = true
    symlinks = false
    ignorecase = true
    hideDotFiles = dotGitOnly
    autocrlf = false
    quotepath = off
[alias]
    st = status

[i18n]
    logoutputencoding = utf8
    commitencoding = utf8
4

1 回答 1

3

“服务器端”Git 对文件的内容不感兴趣——它甚至不知道它们的存在,因为它对客户端发送的不透明数据块进行操作。

此外,“客户端”Git 也不会触及您的文件,除非清洁/涂抹过滤器到位和/或启用了 EOL 转换(这与编码无关,因此不适用)。

因此,我在这件事上与@joahim-sauer 在一起——据说你的问题在于解释。请注意,Windows 记事本查看BOM以知道文件是 UTF-8,除非文件包含 BOM,否则您不会相信文件是 UTF-8,而且许多文件不包含(许多人认为他们不应该,曾经)。

于 2013-09-13T09:31:00.853 回答