テストとフローを異なる複数のブランチで協力して作業を行う際には、誤って上書きしてしまうのを避けるため、競合を安全に解決し、ブランチをマージする方法を理解しておくことが重要です。
この記事では、mablでブランチを管理する方法を説明します。内容は次のとおりです。
マージ前の変更内容の確認
ブランチ上のバージョン間の変更に関するフィードバックを残すには、ブランチバージョンへのコメントをご覧ください。比較ビューのコメントスレッドを使用すると、マージ前に変更内容についてチームと認識を合わせることができます。
競合の解決
テストブランチをmasterにマージする前に、[ブランチの詳細] ビューを開き、マージの競合が存在しないことを確認します。
[ブランチの詳細] ビュー
[ブランチの詳細] ビューには、ブランチのテストとフローのサマリーが表示されます。テストまたはフローの [Conflicts] 列に赤い感嘆符アイコンが表示されている場合は、テストブランチで最後のバージョンを保存した後に、誰かがmasterブランチでテストまたはフローを更新しています。競合を安全に解決するには、赤い感嘆符アイコンをクリックして、競合の解決ビューを開きます。
制限事項
APIテストでは競合の解決はサポートされていません。
競合の解決ビュー
競合の解決ビューには、以下のセクションを含む3列のテーブルが表示されます。
- masterバージョン: テストブランチに存在しないステップが赤で表示されます。
- 新しいバージョン: マージする前にテストブランチに保存する新しいバージョンを作成するためのスペースです。
- テストブランチバージョン: masterブランチに存在しないステップが緑で表示されます。
白で表示されるステップはmasterとテストブランチのバージョンに存在し、変更できません。
新しいバージョンの作成
新しいバージョンを作成するには、矢印をクリックして、ステップとフローを新しいバージョンの列に移動します。
データ駆動型変数とフローパラメーターに競合が存在する場合、競合の解決ビューには、新しいバージョンで使用する変数や値を選択するためのオプションも表示されます。
新しいバージョンのプレビュー
新しいバージョン用に選択したステップ、変数、パラメーターに問題がなければ、[プレビュー] をクリックして、最終バージョンを確認します。必要な場合は、前の編集ページに戻って、変更を加えることができます。
何も問題がなければ、[保存] をクリックすると、新しいバージョンがテストブランチに保存されます。
ブランチのマージ
ブランチをmasterにマージするには、[ブランチの詳細] ページの [Merge] ボタンをクリックします。
マージの競合の警告が表示される場合は、テストブランチで最後のバージョンを保存した後に、誰かがmasterブランチでテストまたはフローを更新したことを示しています。
- 2つのバージョンを手動で調整するには、[競合の解決] をクリックします。
- ブランチのバージョンをそのままマージするには、[とりあえずマージします] をクリックします。
マージの競合の警告
変更履歴では、新しいバージョンに「Merged X into master」というラベルが付きます。
一度ブランチをマージすると、ブランチを開いたり、マージしたブランチに対してテストを実行したりすることはできません。特定のテストまたはフローを元のバージョンに戻す必要がある場合は、マージの取り消しに関するセクションに記載された手順を実行します。
マージに関する制限事項
マージには次のような違いや制限事項があることに注意してください。
- mabl Desktop App では、テストブランチからマスターブランチへのマージのみサポートしています。他のテストブランチへの変更のマージや、マスターブランチの最新の変更をテストブランチに取り込むことは、Desktop App ではできません。
- mabl CLIは、テストブランチから任意のブランチへのマージをサポートしています。デスクトップアプリケーションと異なり、mabl CLIではマージの競合の確認は行われません。マージの競合が存在する場合、mabl CLIは、テストブランチのバージョンをマージ先のブランチの最新バージョンとして保存します。
マージの取り消し
テストまたはフローのマージ後のバージョンが意図しない結果に終わる場合があります。マージしたブランチバージョンからテストとフローのすべてを復元することはできませんが、次の手順で個々のテストまたはフローを以前のバージョンに復元できます。
- 元に戻したいテストまたはフローの詳細ページにアクセスしてください。
- [変更履歴] タブをクリックします。
- 復元するバージョンを選択します。
- [最新として保存] ボタンをクリックします。
このプロセスは、復元するマージしたテストおよびフローごとに、別々に実行する必要があります。
ブランチの削除
ブランチはmasterにマージした後も、[ブランチ] ページに引き続き表示されます。ブランチを削除するには、ブランチの横のゴミ箱アイコンをクリックします。
一度ブランチを削除すると、元に戻すことはできません。