Middlemanを使用して静的サイトを作成しようとしています。git リポジトリmaster
にはソース ファイルがあります。build
にあるフォルダに静的ファイルが生成されます.gitignore
。gh-pages
Github ページのブランチがあります。のフォルダのgh-pages
内容が含まれるように設定するにはどうすればよいですか。build
master
ありがとう。
Middlemanを使用して静的サイトを作成しようとしています。git リポジトリmaster
にはソース ファイルがあります。build
にあるフォルダに静的ファイルが生成されます.gitignore
。gh-pages
Github ページのブランチがあります。のフォルダのgh-pages
内容が含まれるように設定するにはどうすればよいですか。build
master
ありがとう。
この宝石はエレガントなソリューションを提供するように見えます:
私はOctopressが 使用するのと同じ手法を使い始めました。これは Middleman に最適です。
基本的に、ルート フォルダー内に 1 つ、ビルド フォルダー内に 1 つの 2 つの git リポジトリを使用します。ルート リポジトリdevelop
は、GitHub リモートのブランチにプッシュし、build
ディレクトリを除外します。ディレクトリ内のリポジトリは、同じ GitHub リモートの(または) ブランチにbuild
プッシュされます。master
gh-pages
新しい静的ページのプッシュを自動化するために、次の Rakefile を使用します。
desc "deploy build directory to github pages"
task :deploy do
puts "## Deploying branch to Github Pages "
cp_r ".nojekyll", "build/.nojekyll"
cd "build" do
system "git add ."
system "git add -u"
puts "\n## Commiting: Site updated at #{Time.now.utc}"
message = "Site updated at #{Time.now.utc}"
system "git commit -m \"#{message}\""
puts "\n## Pushing generated website"
system "git push origin master"
puts "\n## Github Pages deploy complete"
end
end
これを行うためのきれいな方法が見つかりませんでした。これは私が使用してきたスクリプトです:
bundle exec middleman build
mv build /tmp/
git checkout gh-pages
git rm -rf .
cp -r /tmp/build/* .
git add .
git commit -m "Update site"
rm -rf /tmp/build
git push
git checkout master