インストールオプションについて
パッケージアイテムをインストールした際に、インストール先とインストール元で同じアイテムIDのアイテムが存在した場合、アイテムの衝突が発生してしまいます。
この衝突を回避するオプションは複数あります。
今回の記事では、複数あるオプションのそれぞれの動作について説明します。
上書き
上書きオプションは、パッケージのツリーをそのまま反映させるオプションです。
今回は、例として画像1のようなアイテムツリーに対して画像2をパッケージしたものを上書きします。
画像1
画像2
画像1と画像2のツリーの違いは、画像1はsample3というアイテムがあるのに対して、画像2ではsample6というアイテムを作成しています。
この画像2のパッケージで上書きを行うと下記のようなアイテムツリーになります。
インストール先のsample3は、パッケージに含まれていなかったため、アイテムツリーから消えてしまいました。
このように、上書きオプションでは、アイテムツリーに含まれていないサブアイテムは、消えてしまうので注意しましょう。
結合-クリア
結合-クリアオプションでは、同じアイテムはパッケージ側のアイテムに上書きされますが、インストール先でパッケージに含まれていないアイテムは、上書きと違い削除されません。
画像1のsample1アイテムにバージョンを追加します。
画像2の状態との差異はsample1のバージョン、sample3,6の有無です。
このアイテムツリーに画像2のアイテムツリーのパッケージを結合-クリアオプションで結合します。
結果は下記のようになりました。
バージョンで差異があったsample1はパッケージのアイテムが適用されました。
また、sample3,6に関してはどちらもアイテムツリーに含まれる結果となりました。
結合-追加
結合追加オプションは、既存のアイテムに新しいバージョンを作成してパッケージアイテムを追加するオプションです。
バージョン1のsample1の「タイトル」フィールドにBeforeと入力します。
「タイトル」フィールドにAfterと入力したバージョン1のsample1アイテムでパッケージを作成します。
このパッケージを結合-追加オプションで結合します。
結果は下記の通り「タイトル」フィールドの値がAfterのバージョン2のアイテムが追加されました。
結合-結合
結合-結合オプションは、既存アイテムのバージョンとパッケージアイテムのバージョンが一致した場合、パッケージアイテムの情報で上書きするオプションです。
結合-追加と同じ条件でパッケージをインストールし、結合-結合オプションで衝突を解決します。
このように、バージョンが一致したアイテムはパッケージアイテムの情報に書き換わってしまいます。
既存の情報を消したくない場合は結合-追加オプションを使用するのがいいかと思います。
※エントリーの内容・画像等は、公開時点での情報に基づきます。
※Sitecoreのバージョンによって実装されている機能が異なります。