在中间部署中,部署路径不适用于Git Deploy Method

mar*_*ion 13 ruby git deployment middleman

我正在使用middleman-blogmiddleman-deploy.

我想要做的是,在我部署的分支内,我希望将静态文件部署到repo中的子文件夹(即不是根文件夹).

我尝试在我这样做config.rb:

activate :deploy do |deploy|
  deploy.build_before = true
  deploy.deploy_method = :git
  deploy.branch = 'gh-pages-2'
  deploy.remote = 'github'
  deploy.path = 'blog'
end
Run Code Online (Sandbox Code Playgroud)

但这不起作用,它仍然部署到根目录.事实上,它甚至没有创建/blog我正在寻找的文件夹.

当我在本地访问配置设置时,这些是我在下面看到的设置:deploy:

:deploy
   :branch = "gh-pages"
   :build_before = true
   :clean = false
   :commit_message = nil
   :deploy_method = :git
   :flags = nil
   :host = nil
   :password = nil
   :path = "blog"
   :port = 22
   :remote = "github"
   :strategy = :force_push
   :user = nil
Run Code Online (Sandbox Code Playgroud)

这向我表明正确设置了path属性.

我也尝试过deploy.path = '/blog',但仍然无效.

那么我怎样才能将它部署到\blog\我的repo中的子文件夹而不是根目录?

不同宝石的版本如下:

middleman (4.1.10)
middleman-blog (4.0.1)
middleman-cli (4.1.10)
middleman-deploy (2.0.0.pre.alpha)
Run Code Online (Sandbox Code Playgroud)

注意:我故意使用,gh-pages-2因为我不想覆盖我的当前,gh-pages而不确定它将部署到正确的子文件夹.

Tho*_*Nys 0

我认为您可以做的最简单的事情就是编写带有构建后步骤的扩展: https: //middlemanapp.com/advanced/custom-extensions/#after_build。这样您就可以在构建过程中移动文件,而中间人部署就可以推送整个构建文件夹。