参照プロジェクト機能とは
開いているプロジェクトに、参照用プロジェクトのモデルを読込み専用で取り込む機能です。分割管理された大規模なプロジェクトのマージを補助するため、チーム開発に大変便利です。
- astah*Blog! 複数人で、同時に効率よくモデリングする方法
- 動画で学ぼう
※動画内の画面は旧バージョンのものです。現在の画面とは異なります。
参照プロジェクトを取り込む
- メインメニュー[ファイル]-[参照プロジェクト管理]を選択し、ダイアログを開きます。

- [追加]ボタンを押下し、絶対パス、または相対パスを選んで、参照するプロジェクトを指定します。

- 参照プロジェクトが追加されます。参照プロジェクトがさらに別のプロジェクトを参照している場合は、その依存関係も階層的にツリー表示されます。

取り込まれたモデルは、参照プロジェクトのモデルは、構造ツリー上にそれを示すマークと共に表示されます。
取り込んだモデルは閲覧のみで、編集・削除はできません。
参照プロジェクトを削除する
参照しているプロジェクトが不要になり、完全に削除したい場合は、以下の手順を行います。
- [ファイル] - [参照プロジェクト管理]を選択して、[参照プロジェクト管理]画面を開きます。
- 参照ツリーから対象のプロジェクトを選択し、[削除] ボタンを押します。
参照プロジェクトのモデルを取り込む(解除)
参照しているモデルを、現在のプロジェクトのローカルモデルとして取り込む場合は、以下の手順を行います。
- [ファイル] - [参照プロジェクト管理]を選択して、[参照プロジェクト管理]画面を開きます。
- 参照ツリーから対象のプロジェクトを選択し、[解除] ボタンを押します。
[削除]との違い
[削除]とは異なり、モデル自体は削除されません。「読み取り専用」が解除され、通常のローカルモデルとして自由に編集できる状態で取り込まれます。
参照プロジェクトが更新された場合
取り込んでいる参照プロジェクトのオリジナルのファイルが編集されている場合は、下記のようなダイアログが開きます。

[OK]を押すと、参照プロジェクト管理画面が開きます。
astah* professional、UML Ver.12以降で、参照プロジェクト管理画面でファイルの依存関係を階層的に検出し、状態を確認、一括更新できるようになりました。更新が必要な参照プロジェクトは[状態]欄に「要更新」と表示されるので、対象を選択して[更新]ボタンを押すか、[全て更新]ボタンでまとめて更新できます。

コマンドラインから参照プロジェクトを更新する
batファイルやshファイルを用いて、コマンドラインから参照プロジェクトを更新できます。(コマンドラインツールを使う)
バッチファイルから参照プロジェクトを更新する
ディレクトリを指定してupdate-allを実行することで、指定したディレクトリ配下に存在する*.astaファイル全てのうち、参照プロジェクトの情報が更新されていないプロジェクトファイルに対して参照プロジェクトの更新を行います。更新の有無はファイルのタイムスタンプで判定しますが、use-builtin-timestampまたはubtを指定することで、 プロジェクトに記憶したタイムスタンプで判定するように指定できます。出力先ディレクトリには、yyyyMMdd_HHmm_convert_command.logのファイル名でログが出力されます。
Windows
call astah-run.bat “astah_directory_path” update-all e.g. call astah-run.bat “C:\\Program Files\\astah-professional” update-all
Mac/Linux
astah-run.sh “astah_directory_path” update-all e.g. astah-run.sh “/home/tanaka/astah-professional” update-all
- astah-run.bat、astah-run.shはastah*インストールフォルダ内にあります。
- use-builtin-timestamp(ubt)オプションにより、ファイルのタイムスタンプではなく、プロジェクトが持つファイルのタイムスタンプで更新します。
バッチファイルから強制的に参照プロジェクトを更新する
ディレクトリを指定してupdate-all-forceを実行することで、 指定したディレクトリ配下に存在する*.astaファイル全てのうち、 参照プロジェクトの情報を持つプロジェクトに対して強制的に参照プロジェクトを更新します。出力先ディレクトリにはyyyyMMdd_HHmm_convert_command.logのファイル名でログが出力されます。
Windows
call astah-run.bat “asta_directory_path” update-all-force e.g. call astah-run.bat “C:\\Program Files\\astah-professional” update-all-force
Linux
astah-run.sh “astah_directory_path” update-all-force e.g. astah-run.sh “/home/tanaka/astah-professional” update-all-force