Css 字体会被破坏

Css 字体会被破坏,css,git,fonts,font-face,Css,Git,Fonts,Font Face,我有一个自定义字体,当我从我的本地开发主机请求一个页面时(通过Windows8.1上的Vagrant在VM中使用Ubuntu14.04),它可以很好地呈现出来。 在我通过SourceTree将其提交到Bitbucket上的git repo,然后签出提交到我的stage服务器后,字体会被破坏——它不会在浏览器中呈现。只有IE给出错误CSS3111(@font-face的未知错误)和CSS3112(由于WOFF不一致而拒绝),其他浏览器什么也不说。 什么会导致问题?一些编码转换?尝试将core.au

我有一个自定义字体,当我从我的本地开发主机请求一个页面时(通过Windows8.1上的Vagrant在VM中使用Ubuntu14.04),它可以很好地呈现出来。 在我通过SourceTree将其提交到Bitbucket上的git repo,然后签出提交到我的stage服务器后,字体会被破坏——它不会在浏览器中呈现。只有IE给出错误CSS3111(@font-face的未知错误)和CSS3112(由于WOFF不一致而拒绝),其他浏览器什么也不说。
什么会导致问题?一些编码转换?

尝试将
core.autocrlf
配置选项设置为true。还可以查看
core.safecrlf
选项

实际上,听起来您的存储库中可能已经设置了core.safecrlf,因为(我的):

如果当前设置core.autocrlf不是这种情况,git 将拒绝该文件

如果是这种情况,则可能需要检查文本编辑器是否配置为一致使用行尾。如果文本文件混合包含LF和CRLF行结尾,则可能会遇到问题

最后,我觉得简单地“使用你得到的”和在Windows上使用LF终止的行的建议将导致比它解决的问题更多的问题。Git有上面的选项来尝试以合理的方式处理行结尾,因此使用它们是有意义的


贷记

问题在于从windows提交期间字体文件从CRLF转换为LF。我通过在.gittributes中将字体文件声明为二进制来解决这个问题