20

Jekyll を使用してローカルにサイトを構築し、それを新しいマスター リポジトリ (username.github.com) にプッシュしました。サイトはうまく機能します。私の質問は、デプロイ可能な部分 ( _siteディレクトリ)だけを gh-pages ブランチに移動するにはどうすればよいですか? むしろ、それが展開する最良の方法である場合、そのディレクトリの内容ですか?

独自ドメインを使おうと思っています。私のワークフローは、master ブランチ (おそらくいくつかのフィーチャー ブランチ) で作業し、コンパイルされた結果を gh-pages ブランチにプッシュ (マージ) することです。その音は正しいですか?

ドキュメントを介してそれを理解するのに苦労しています。助けていただければ幸いです。ありがとうございます!

4

5 に答える 5

3

やりたいことは、Octopressの仕組みと非常によく似ています。このようなことができる方法を説明しましょう。

_siteブランチに存在するデータをデプロイしたいと考えていますgh-pages。したがって、最初のステップは、リポジトリのデフォルトのブランチをorusername.github.comではなく gh-pages にすることです (基本的には、あなたが望むものは何でも)。ここで行う必要があるのは、の内容を branchにコピーするタスクを に記述することです。それが完了したら、手順を自動化するか、手動で行うことができます。そうすれば、GitHub はデフォルト ブランチのときに Web サイトを構築せず、代わりに に存在する静的ページをサーバーするだけです。mastersourceRakefile_sitegh-pagespushpush_site

スクリプトがどのように機能するかを理解したい場合はRakefile、Octopress の現在を参照してください。と と呼ばれる 2 つのタスクがgenerateありdeployます。を実行すると というディレクトリにコードを入れるためのパラメータでrake generate実行され、を実行すると の内容をブランチにコピーしてコミットします。個人的には、この手順はとても気に入っていますが、自分の Jekyll サイトには実装していません。jekyll --no-auto_deployrake deploy_deploygh-pages

于 2013-03-16T08:12:26.140 に答える
3

私のjgd gemを試してみてください。あなたがする必要があるのは、それをインストールして実行することだけです:

gem install jgd
jgd

終わり!サイトが構築され、 に展開されgh-pagesます。またjgd、travis-ci やその他の CI サーバーと完全に統合します。

この投稿では、メカニズムについて詳しく説明しています: http://www.yegor256.com/2014/06/24/jekyll-github-deploy.html

于 2014-04-20T13:57:16.177 に答える
1

フォルダ内のファイルに変更を加えたくない場合_site_siteこれは、Jekyll が生成した静的な html ページを保存することです。それらは、次に Jekyll サーバーがサイトを再生成するときに自動的に上書きされます。たとえば、新しいブログ投稿を作成すると、サーバーは新しいファイル (または更新されたファイル) を認識し、新しいコンテンツを含む静的ページを再生成します。このように、新しいブログ投稿がページの上部に表示されます。

ファイルに追加すること_siteをお勧めし.gitignoreます。github のサーバーにアクセスするとすぐに上書きされるため、そのディレクトリをリポジトリにプッシュする必要はありません。

あなたがやりたいことはcheckout、新しいブランチであり、変更を加えてから、それをブランチにマージすることだと思いますgh-pages

于 2015-11-23T05:32:33.837 に答える