Git Shell Ruby Bundler 错误解析 'Gemfile' : 未定义的局部变量或方法 '??g'

Git Shell Ruby Bundler error parsing 'Gemfile' : Undefined local variable or method '??g'

我已经通过 Windows 安装程序安装了 Ruby 2.2.2 (x64)。

然后从 GitHub for Windows Git Bash Shell,通过 gem install bundler.

安装 Bundler

在我的站点存储库中,我创建了一个名为 Gemfile 的文件,其中包含行 gem 'github-pages'.

然而,当我尝试 运行 bundler 命令时,我收到

[!] There was an error parsing 'Gemfile': Undefined local variable or method '??g' for Gemfile. Bundler cannot continue.

 #    from C:/Users/User/Documents/GitHub/repository/Gemfile:1
 #    -------------------------------------------
 #     >   ??g e m    ' g i t h u b p a g e s '  #   ??g e m    ' g i t h u b p a g e s '
 #    -------------------------------------------

这也发生在 Git Shell 那 运行s Windows 电源 Shell.

第一个字符似乎没有正确解析,文件解析了两次都出错,但不确定原因。

我怀疑这是一个字节编码问题。您的文本编辑器可能以 UTF-16 格式(每个字符 2 个字节)和 2 字节 BOM(字节顺序标记)保存文件。这显示为两个问号,因为 Bundler 显然(至少默认情况下)不处理 BOM。

错误消息中字符之间的空格是可能使用 UTF-16 的另一个线索。

我怀疑 Bundler 要求文件采用 UTF-8 编码(每个字符 8 位),并且没有 BOM。

要解决此问题,请查看您的代码编辑器是否可以配置为以 UTF-8 格式保存文件。