rails_and_jekyll

rails_and_jekyll

jekyllとrailsの共存の練習とgitコマンドの練習

rails&jekyll

Railsとjekyllの共存ができるかの確認と、gitコマンドの練習とブランチの管理の練習。

ブランチの作成。

ブランチの構成を以下の通りにする。

ブランチ名 内容
main Railsの変更を記録する
gh-pages jekyllを使ったGitHub Pagesの内容

Creating a GitHub Pages site with Jekyllを参考にブランチの作成をする。

以下コマンドメモ。

$ rails new .
$ git add .
$ git commit -m "first commit"
$ git branch main
$ git checkout --orphan gh-pages
$ git clean -fdx && test $(git ls-files | wc -l) -eq 0 || git rm -rf .
$ mkdir -v docs && cd docs
$ jekyll new --skip-bundle .
# Gemfileを編集。github-pagesを有効に、jekyllを無効に
$ bundle install
$ cd ../
$ git add .
$ git commit -m "jekyllプロジェクトの作成"
$ git checkout main
$ git remote add origin [email protected]:Nagasaka-Hiroki/rails_and_jekyll.git
$ git push -u origin main
$ git push origin gh-pages

これで一応デプロイまでされているが、URLの設定はしていなかったので再設定して実行する。

しかし、checkoutは一度コミットしないと切り替えられないらしく(切り替えられるがコミット前のデータが消失?)少し都合が悪い?
もしrailsプロジェクトとjekyllプロジェクトの両方の書き換えが激しい場合、単純にリポジトリを分けたほうがいいかもしれない。

$ git add .
$ git commit -m "readme.mdの編集"
$ git checkout gh-pages
$ cd docs
# _config.ymlの編集
$ git add .
$ git commit -m "_config.ymlの編集"
$ git push origin gh-pages

どうやら、普通にpushした場合ディレクトリはrootになるらしいので、設定で./docsに変更しなければダメそうだ。

結果問題なくデプロイはできた。

ひとまずメモは以上。

参考

追記

頻繁にブランチを移動して編集する場合、リポジトリを分けたほうがいいと書いたが、やり方としてリポジトリを一つにしてブランチを2つ作成。

その後、元のディレクトリをmainブランチにして、別のディレクトリにクローンしてブランチをgh-pagesに切り替えて編集すればよいと思った。
このようにすれば、リポジトリを一つにして毎回ブランチを切り替えて編集しなくともディレクトリで分けて管理することができる、と思った。

この方法が現状思いつく限りのベストだと思う。(本来の使用方法とは違うかもしれないが…。)