ExpressionEngineによるソース管理(git経由)

私はEEでソースコントロールのいくつかの形式を使用しようとしています。

ほとんどのCMSのように、テンプレートと他の構造からデータベースを切り離す方法ははっきりとは分かりません。チャネルと特定のエンティティの作成は、100%がデータベースに結びついているようです。

ExpressionEngineのインストールとすべてのアプリケーションエンティティを完全にソースコントロールできる人はいますか?

2
EEが「現代のCMS」であるのかCIがPHP5のフレームワークであるのかを守るのではなく、有益な解決策を提供するコミュニティがここにあります。 Stack Overflowについてはすでによく知っているので、これまでに試したことの詳細やスタックされている箇所など、より建設的な方法で質問を書き直せますか?
追加された 著者 ESV,
部屋にトロールがありますか?ワードプレスはそれをすることもできません。
追加された 著者 Ryan Olson,
私は、あなたが "データベースからテンプレートを切り離す"という意味をよく理解していません。テンプレートは、バージョン管理の目的でファイルとして保存することも、保存することもできます。明らかに、チャンネルの設定は同じ方法でバージョン管理することはできませんが、リポジトリにdbダンプを保存することは多くの人にとって効果的です。
追加された 著者 Daan,
Wordpressはこれをやっています...まさにこれは...?ポストタイプ(エントリ相当)はファイル内のデータ構造として宣言され、100%ソース制御可能です。私に間違った言葉を掛けてはいけません。少なくとも、ソース管理が可能ではありますが、欠陥はありません。
追加された 著者 KeithS,

2 答え

あなたは "現代のCMS"の意味を定義できますか? Gitソースコントロールを使用している場合、データベース駆動型システムでも同様の問題が発生します。これは特にExpressionEngineの問題ではありません。この難しさに苦しんでいない唯一のシステムは、フラットファイルアーキテクチャを使用しているシステムです。

私はしばしばGitとExpressionEngineを使用します。あなたが指摘しているように、唯一可能性のある点はデータベースです。

自分のサイトルートの上にデータベースバックアップ用のフォルダを作成します。バックアップは、手動で実行するか、BackupPro(ish)(Cron経由で自動化されたもの)を使用して実行されます。これは、データベースがリポジトリで使用可能であることを意味します。

また、DeployHQを使用してリポジトリからステージング/プロダクションサーバーに展開します。データベースは、配備後に手動でインポートされます。これは、デプロイメントプロセスの一部として実行されるBashスクリプトを介して自動化することができます。

There is also a wealth of useful info in this thread ExpressionEngine and GIT Process

3
追加された
ExpressionEngineはデータベースをフラットファイルとして保存できます。開発にとって確かにこれはとにかく働く最善の方法です。新しいテンプレートがファイルとして存在するのかデータベースに存在するのかに基づいて、どのテンプレートを優先するのかを決定します。同期は本当に問題になることはありません。実際にはデータベース上のファイルに優先順位が与えられます。多分あなたの問題はExpressionEngineをExpressionEngineとして、他のシステムの練習をワークフローに取り入れるのではなく、むしろExpressionEngineとして使うことでしょうか?
追加された 著者 Holtorf,
カスタムアドオンやプラグインを開発している場合を除き、CMS(本来の性質のCMS)が構築されているフレームワークは関係がありません。 EEのポイントは、CIに関する1つのことを知る必要はありませんことではありません。 BTW。 CodeIgniterにはPHP 5.1.6が必要です。 "PHP4フレームワーク"になるためには、私は本当にあなたのことを知りません。
追加された 著者 Holtorf,
現代のCMSは、通常、テンプレート内のデータベースから引き出されたコンテンツタイプ(エントリ)を表示するテンプレート駆動型である。エクスプレッション・エンジンはテンプレートをデータベースに保存しますが、これはデータベース上のファイルに優先順位を付ける適切な同期エンジンで問題ありません。 EEテンプレートの同期は非常に欲しいものです。基本的にPHP 4フレームワーク(Codeignighter)で書かれていますが、PHP 5以降の多くの機能に欠けています。テストドライブのために作曲家ベースのフレームワークを取ってください。あなたは真剣にあなたが対処方法を疑問に思っています。
追加された 著者 KeithS,
また、データベースをgitリポジトリに同期させる必要があるため、最初はgitを完全に冗長にする必要があります。
追加された 著者 KeithS,
明らかに、私は私の肩にチップを持っています:表現エンジン。私はここで怒らないでください。基本的に通気孔だけで、このCMSの欠点を回避する方法を見つけることができます。
追加された 著者 KeithS,
CMSが構築したフレームワークは、無関係なものからFARです。コンポーザー・パッケージのエコシステムを利用している現代のフレームワークを見てみると、私はそれが何を意味するのかを知ることができます。
追加された 著者 KeithS,

すべてのテンプレートは、ファイルとして保存するよう設定できますので、ソースを制御することができます。

あなたが問題を抱える唯一のものはdbですが、私にはdbを動かすcmsが$ 10k以下であることがわかります。

GITを使ってEEサイトを運営する方法についての情報がたくさんありますが、グーグルの小さなものがあなたをそこに連れて来ますが、私たちの多くはGITでそれを非常にうまく実行しています。

1
追加された
Symphony CMS、Yii、Pyro CMS、10月CMS、Ghost CMS ...リストは頻繁に起こります....これらはすべてDB駆動であり、テンプレートファイルとデータ構造(エントリ)はデータベースから切り離されています。
追加された 著者 KeithS,
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com