作業内容をマージする
多数の開発者が同じモジュールに対して作業を行う環境では、他の開発者の変更をモジュールに取り込む必要がある場合がよくあります。衝突のある変更がない場合は、Service Studioではまず自動的に差異の統合が試行されます。衝突のある変更が検出された場合は、手動で衝突を解決するように求められます。モジュールをパブリッシュするには、ローカルモジュールを更新し、衝突を解決してローカルに保存してから、モジュールをパブリッシュする必要があります。
マージ機能はOutSystemsのビジュアル言語を考慮して設計されており、ビジュアル要素とテキスト要素の両方の変更を確認できます。
マージ機能の概要を以下に示します。衝突の解決の詳しい手順については、比較およびマージの例をご覧ください。OutSystemsのマージ操作の概要については、マージ機能およびチームコラボレーションに関するドキュメントで説明しています。
Modified version detected
モジュールをパブリッシュしようとしたときに自分のバージョンとサーバー上のバージョンとの差異がService Studioによって検出された場合、[Modified version detected]ウィンドウが表示されます。最も重要なボタンとそのアクションを以下に示します。
- Merge and publish
- 差異の自動マージを試行し、更新されたバージョンをパブリッシュすることができます。衝突のある変更によって自動マージが失敗した場合は、その後に開く[Compare and Merge]ウィンドウで差異を手動で解決できます。
- Compare
- [Compare and Merge]ウィンドウを開いて2つのバージョンの変更をプレビューし、パブリッシュ前にローカルバージョンを編集することができます。
- Publish my version
- このオプションを使用すると、サーバー上のモジュールのバージョンをローカルのバージョンで上書きします。このオプションによる操作は元に戻すことができず、現在サーバー上にあるバージョンの変更はすべて失われます。
Compare and Mergeウィンドウ
[Modified version detected]ウィンドウで[Compare]をクリックすると、[Compare and Merge]ウィンドウを開くことができます。[Compare and Merge]ウィンドウにはローカルバージョンとサーバーバージョンが並んで表示され、テキスト要素とビジュアル要素を選択して取り込むことができます。変更が衝突する要素には「(merged with conflicts)」というラベルが表示されます。要素をダブルクリックすると詳細画面に移動します。
テキスト要素を編集する
マージ中に編集できるテキスト要素は、CSS、JavaScript、要素内のプロパティの値(Assignツールの変数の値、SQL式、説明、ウィジェットのテキストなど)です。テキスト要素をダブルクリックすると、2つのタブに別のバージョンと元のバージョンのテキスト要素が表示されます。 [Merged version (衝突の数)]タブには、編集可能なテキストと比較が表示されます。
- [Merged version]ペイン: マージ中にローカルに保存したテキスト要素。自動マージされたテキストと解決が必要な衝突のある変更が_両方_含まれます。このテキストは変更できます。
- [The other version]ペイン - モジュールのサーバーバージョンのテキスト要素。このテキストは変更できません。
[Your version]タブには、比較が表示されます。
- [Your version]ペイン - モジュールのローカルバージョンのテキスト要素。このテキストは変更できません。
- [The other version]ペイン - モジュールのサーバーバージョンのテキスト要素。このテキストは変更できません。
テキスト要素の衝突を解決する
ローカルバージョンに保存してサーバーにアップロードする変更を選択するには、[Merged version (衝突の数)]タブで以下の手順を実行します。
- サーバーバージョンの変更を適用するには、[The other version]ペインで矢印をクリックします。
- ローカルバージョンの変更を適用するには、[Merged version]ペインでチェックボックスを選択します。
- 結果として得られるローカルバージョンを変更するには、[Merged version]ペインでテキストを編集します。
すべての差異を強調表示する
デフォルトでは、変更を編集するペインでは衝突がある行のみが強調表示されます。すべての変更を強調表示したい場合は、[Highlight all differences]チェックボックスにチェックを付けます。
カラーリファレンス
異なる色で強調表示することで、バージョンの差異を特定しやすくなります。強調表示の上にマウスポインタを重ねるとツールチップの説明が表示されます。
各色の説明は以下のとおりです。
色 | 名前 | 意味 |
---|---|---|
![]() |
グレー | 削除された行 |
![]() |
緑 | 挿入された行 |
![]() |
衝突がない変更された行、このバージョンの変更はありません | |
![]() |
衝突がない変更された行、このバージョンは変更されました | |
![]() |
赤 | 両方のバージョンが変更されており、衝突があります |
「Merge and publish」と「Merge」の比較
適用する変更を選択したら、[Merge and publish]または[Merge]を選択して統合プロセスを終了します。
- Merge and publish: クリックするとモジュールのローカルバージョンを更新してモジュールをパブリッシュします。
- Merge: クリックするとローカルモジュールを更新して作業を続行します。パブリッシュするときは[1-Click Publish]ボタンを使用します。
以前のマージを復元する
マージの変更とアクションは自動的に保存されます。[Recover Previous Merge]ウィンドウが表示されたとき、[Yes]をクリックすると以前の編集を失うことなく変更作業を続行できます。[No]をクリックすると保存済みのマージの編集が削除され、編集を最初から開始できます。
このセクションの記事
- マージ機能およびチームコラボレーション
- マージ機能、衝突の解決、モジュールの比較について説明しています。
- 衝突がある場合の比較およびマージの例
- 衝突がある場合に差異をモジュールにマージする手順について詳しく説明しています。