如果gemfile存在,Jekyll将无法构建

时间:2016-05-12 16:14:44

标签: github bundler jekyll github-pages

我正在使用我的Github Pages网站,因此需要在我的本地计算机上构建它。 Following their instructions,我已使用bundler进行设置。然而,捆绑者似乎打破了Jekyll的构建。

如果我运行jekyll new NewSite,则会创建一个可以使用jekyll serve构建的新网站。然而,只要我运行bundle installbundle update,Jekyll就会拒绝运行,在“生成”步骤中给出以下错误。

jekyll 3.0.5 | Error:  No such file or directory - git remote --verbose

每次调用bundle exec jekyll servejekyll serve时,它都会给出相同的错误。进一步的调查发现,如果删除gemfile文件,错误就会消失。

我错误配置了什么?

更新

  1. 我已按要求添加了堆栈跟踪
  2. 我意识到导致问题的是gemfile本身,而不是gemfile.lock
  3. 问题与Windows无关,因此删除了对它的引用
  4. 堆栈追踪:

    C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-github-metadata-1.11.1/lib/jekyll-github-metadata/ghp_metadata_generator.rb:32
    :in ``': No such file or directory - git remote --verbose (Errno::ENOENT)
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-github-metadata-1.11.1/lib/jekyll-github-metadata/ghp_metadata_generator.rb:32:in `git_remote_url'
    from C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-github-metadata-1.11.1/lib/jekyll-github-metadata/ghp_metadata_generator.rb:39:in `nwo_from_git_origin_remote'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-github-metadata-1.11.1/lib/jekyll-github-metadata/ghp_metadata_generator.rb:65:in `nwo'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-github-metadata-1.11.1/lib/jekyll-github-metadata/ghp_metadata_generator.rb:8:in `generate'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-3.0.5/lib/jekyll/site.rb:154:in `block in generate'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-3.0.5/lib/jekyll/site.rb:153:in `each'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-3.0.5/lib/jekyll/site.rb:153:in `generate'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-3.0.5/lib/jekyll/site.rb:58:in `process'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-3.0.5/lib/jekyll/command.rb:28:in `process_site'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-3.0.5/lib/jekyll/commands/build.rb:60:in `build'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-3.0.5/lib/jekyll/commands/build.rb:35:in `process'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-3.0.5/lib/jekyll/commands/serve.rb:26:in `block (2 levels) in init_with_program'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `call'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `block in execute'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `each'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `execute'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/mercenary-0.3.6/lib/mercenary/program.rb:42:in `go'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/mercenary-0.3.6/lib/mercenary.rb:19:in `program'
        from C:/Ruby22/lib/ruby/gems/2.2.0/gems/jekyll-3.0.5/bin/jekyll:17:in `<top (required)>'
        from C:/Ruby22/bin/jekyll:23:in `load'
        from C:/Ruby22/bin/jekyll:23:in `<main>'
    

    我的Gemfile:

    source 'https://rubygems.org'
    gem 'github-pages', group: :jekyll_plugins
    gem 'safe_yaml', '~> 1.0.4'
    gem 'wdm', '~> 0.1.0' if Gem.win_platform?
    

    Ruby版本:2.2.4 32位

    Bundler版本:1.12.3

    Jekyll版本:3.0.5

1 个答案:

答案 0 :(得分:0)

这是jekyll-github-metadata gem,当您尝试在系统上运行git remote --verbose命令时会出现问题(code)。

您可以尝试设置_config.yml变量(documentation):

repository: username/repo-name
相关问题