質問: Gitを用いてデータベースのようなシステムを構築したいと考えています 今考えているのがWebサーバーにある作品のレビューサイトから、リモートリポジトリにある 作品データを反映し表示させる さらにWebサイトからコメントを送信して、それをリモートに保存し、Webサイトに表示させる といったものを構築したいと考えています。 調べた限りでは、Webサーバーにあるものに対してデプロイをかけるということは判明したのですが、 あくまで変更をかけるといったことしか書かれていません 勉強不足なのは重々承知の上なのですが、上記のシステムは構築可能でしょうか? よろしくお願いいたします。
回答: ざっと質問文読みましたが、やってできないことはないです。 しかしやめといたほうがいいでしょう。 後でコメントを一覧化して悪いコメントを削除する要望でると工数が掛かりそうです。 また、Webサーバー複数台になると絶対無理なので断ってください。 コンフリクト多発で頓挫が目に見えています。 Gitは単なるバージョン管理ですので、テキストファイルベースで管理すれば良いでしょう。 ファイル形式はJSONやYaml等を利用すればうまく管理出来るかと思います。 やるとすれば昔のCGI時代のホームページで利用されていた作戦を応用します。 受け皿にDBを利用し、定期的に静的なページを吐き出すという仕組みです。 例えば1分間に1度Cronが走り、DB(今回はSQLiteとします)のコメントテーブルを精査します。 コメントに従って各記事のコメントファイル(JSONやYaml)を更新してGitコミットします。 反映したコメントはDBから削除してしまえばコメントファイルのみの管理に集中できます。