最近のアクセス:
GeneXus Server のロックモデル

ロックモデルは GeneXus Server のバージョン管理モデルの 1 つです。
最初に、それぞれの GeneXus 開発者が GeneXus Server からナレッジベースを作成する操作を行い、同じ GeneXus Server インスタンスからナレッジベースを作成します。
ナレッジベースの作成が完了すると、ローカルのナレッジベース内のオブジェクトはすべて読み取り専用になります。開発者が特定のオブジェクトを変更するには、先にオブジェクトの編集権限、つまりオブジェクトのロックを取得する必要があります。 
オブジェクトの変更が完了したら、ローカルオブジェクトのコピーが GeneXus Server のナレッジベースにコミットされます。
このモデルは、複数の開発者が同じオブジェクトを同時に編集することはほとんどないという考えに基づいています。開発者がオブジェクトを編集するには、先にオブジェクトのロックを GeneXus Server から取得する必要があります。ロックは、同時変更を防ぐために一度に 1 人の開発者にのみ付与されます

使用例

開発者 A および開発者 B が、それぞれ同じ GeneXus Server ナレッジベースの作業コピーを作成するものとします。2 人は並行して作業を進め、それぞれのローカルコピー内で異なるオブジェクトを変更します。
開発者 A はオブジェクト A のロックを取得し、開発者 B はオブジェクト B のロックを取得します。2 人はそれぞれローカルで変更内容を保存します。
開発者 B がオブジェクト A のロックを取得しようとすると、GeneXus Server インスタンスから、オブジェクト A が開発者 A によってロックされていることが通知されます。これは、開発者 A がロックを解除するまでこのオブジェクトを編集できないことを意味します。そのためには、開発者 A がコミットするか、元に戻すか、またはロック解除する必要があります。
オブジェクト A のロックが解除されたら、開発者 B がロックを要求し、更新操作の実行後に変更を開始できます。
注: 1 つのオブジェクトに複数のユーザーが同時に変更を加えることはできないため、変更内容のマージは必要ありません。

GeneXus Server でロックを再同期

ロックはサーバーのナレッジベースとクライアントのナレッジベースの両方でキャンセルされる可能性があります。これは、承認済みユーザーなら誰でも強制ロックオプションを実行できるからです。
そのため、サーバーでどのロックが有効になっているか (ローカルのナレッジベースではなく、サーバーのナレッジベースでのロックについての確かな情報) を確認したい開発者にとっては、再同期の操作が役立ちます。
サーバーに接続しているナレッジベースがあり、ロックを使用している場合、GeneXus のメインメニューから [ ナレッジマネージャ ] > [ チーム開発 ] の順に選択して、開いたダイアログで [ ロック ] タブを表示すると、ロックされているオブジェクトを確認できます。その画面には、 [ GeneXus Server でロックを再同期 ] ボタンが表示されます:
イメージ:50387.png

参考情報







サブページ
Created: 15/01/07 22:49 by Admin Last update: 23/05/09 23:47 by Admin
カテゴリ
Powered by GXwiki 3.0