nexacro platformでは、ソースコード管理システムと連携をサポートします。サポートするソリューションによって機能が異なる場合があります。
Subversion
Subversion使用設定
SubVersionクライアントモジュールをインストールした場合に nexacro studioの Tools > Options機能の Source Controlカテゴリーから‘SVN’を選択することができます。
옵션_Source-Control_화면
SVNでサポートするオプションは、下記の通りです。
Option | 説明 |
---|---|
General(必須) | |
Execute file path | SVNコマンドラインクライアント実行ファイルのパス |
Project Repository | プロジェクトソースを管理するリモートリポジトリのアドレスとアカウント情報 |
Additional Repository | |
Interaction the generate path | Generate Pathのソース管理適用有無を設定 |
Generate Repository | ジェネレートされたソースを管理するリモートリポジトリのアドレスとアカウント情報 |
Project Management | |
Check SVN status when opened project | プロジェクトを開く時にファイルのステータスを自動的にチェックするオプション |
Update file(s) when opening the project | プロジェクトを開く時にファイルの最新バージョンを取得するオプション |
Commit file(s) when closing the project | プロジェクトを閉じる時にチェックアウト状態のファイルを コミットするオプション |
Updated modification list after performing the command(削除済み) | コマンドを実行した後、修正項目のリストを自動更新するかを設定 |
File Management(xfdl, xjsファイルのみ適用) | |
Add file when inserted | 新しいファイルを追加するときに自動的にAddコマンドを実行するかを設定 |
Update file when opening the file | ファイルを開くときに、最新バージョンのファイルを自動的に取得するかを設定 |
Commit file when saving the file | ファイルを保存するときに自動的にコミットするかを設定 |
Lock file when edited | ファイルの編集中には自動的にロック状態に設定して、他のユーザーが編集できないようにするかを設定 |
Externals | |
Diff Viewer execute file path | バージョンごとのファイルを比較するための外部プログラムを登録 |
Merge Tool execute file path | ファイルのマージ時に使用する外部プログラムを登録 |
下記の項目は、3つのオプションのいずれかを選択することができます。
Commit file(s) when closing the project
Add file when inserted
Commit file when saving the file
Lock file when edited
Commit Automatically:ユーザーの確認なしに自動的に実行
Prompt for Commit:ユーザー確認後処理
Do nothing:オプションを使用しない
nexacro StudioでSVNオプションが有効になるためには、Subversionクライアントをインストールする必要があります。
nexacro Studioでは、Windowsレジストリに登録された項目にSubversionクライアントがインストールされているかどうかを確認します。
「User execute file path」項目の右側に[?]ボタンをクリックすると、SVNクライアントのインストールに必要な情報を確認することができます。
サブバージョン1.6.0バージョン未満の場合、nexacro StudioでSVNオプションが表示されないか、一部の機能が動作しないことがあります。
Subversionクライアントのインストールについて関連情報は別途提供しません。インストール関連情報は、以下のリンクを参照してください。
ツールバー
nexacro studioでは、次のような SVN動作をサポートしております。
INCLUDE_ERROR(ELEMENT_REMOVED)
項目 | 説明 | |
---|---|---|
Update | 最新バージョンのファイル内容をダウンロードします。 | |
Commit | 変更された内容をリポジトリに反映します。 | |
Revert | 以前に実施した作業をキャンセルしてファイルの状態を以前の状態に修復します。 | |
Lock | 指定されたファイルを他のユーザーが使用不可能なロック状態に変更します。 | |
Unlock | 設定されたロック設定状態を解除します。 | |
Import | プロジェクトをリポジトリに登録します。 | |
Add | 新規ファイルを追加します。追加されたファイルは commitを実行してサーバーに反映することができます。 | |
Delete | 指定されたファイルを削除状態に変更します。Commitを実行してサーバーから削除することができ、ローカル作業位置で実際のファイルは削除されません。 | |
Rename | 指定されたファイルのファイル名を変更します。SVNは、変更されたファイル名で Add/Delete方式で進むことになります。 | |
Edit Conflicts | 競合状態のファイルを編集します。 | |
Resolve | 作業ファイルの競合を解消します。 | |
Clean up | 作業ファイルを再帰的に巡回しながら、失敗した作業を無効化処理します。 | |
Refresh Status | ファイルの状態をリフレッシュします。 | |
Show Log | ファイルのバージョンヒストリを確認することができます。 | |
Compare with Previous Revision | 以前のバージョンとは異なる部分を比較します。Optionsで、‘Diff Viewer execute file path’のプログラムが登録されている必要があります。 | |
Repository Browser | リポジトリブラウザを起動します。 |
メニューバーでも同じ機能を提供します。ただし、メニューバーには[View]メニューがあって、SVNのOutputウィンドウとCheck for Modification(Project)ウィンドウを有効/無効にすることができます。
SVNのBarとMenuを有効にして使用するためには、サブバージョンのクライアントをインストールした後、nexacro studioの[Tools>Optionsウィンドウ]でSource Control項目を設定する必要があります。
認証(Authentication)
オプションにて、Project Repository、Generate Repository項目にリポジトリ情報とアカウント情報を通常に設定して保存する場合、リポジトリにアクセスして認証を処理します。正常に認証された場合には別のメッセージを出力せず、認証が失敗した場合には下記のようにメッセージを表示します。
リポジトリに接続されていないプロジェクトを実行した状態で、SVNを使用するオプションを変更した場合には、下記のようなリポジトリの登録有無を確認するポップアップメッセージが表示されます。「Yes」をクリックした場合は、Import機能を実行します。
import_repository_message
Project Repositoryのみ設定した場合には、Project Repositoryのみ表示され、Generate Repositoryまで設定した場合には、Project Repository、Generate Repositoryの2つの項目が表示されます。プロジェクトのパスは、デフォルトで設定されたパスの下位プロジェクト名でフォルダを生成し、Repositoryを自動的に指定します。
基本機能
プロジェクト新規登録(Import)
新規プロジェクトを生成するか、リポジトリに登録されていないプロジェクトを登録することができます。サブバージョンの使用設定をした状態で、新規プロジェクトを生成した場合、自動的に実行され、登録されていないプロジェクトは、メニューの[SVN>Import]を選択して実行することができます。
項目 | 説明 |
---|---|
Project Repository | プロジェクトのソースを登録するリポジトリアドレスを指定します。 オプションで指定されたリポジトリアドレスの後ろにプロジェクト名のフォルダを生成します。 |
Generate Repository | ジェネレートされたソースを登録するリポジトリアドレスを指定します。 |
Import Message | Importメッセージを入力します。 |
Include Ignored Files | Subversionで設定された、無視されるファイルの格納の有無を決定します。 |
Importされたプロジェクトは、SVNと連動されるために自動的にチェックアウトが行われます。
import_and_checkout
コミット(Commit)
作業コピーの変更内容をリポジトリに反映します。
commit_popup
項目 | 説明 |
---|---|
Message | コミットメッセージを入力します。 |
Path | コミットするファイルのリストを表示します。 |
Keep Locks | コミット対象のロック状態を維持するかを決定します。 該当機能は、対象ファイルがロック状態である場合にのみ有効になります。 |
ファイル追加(Add)
接続されたリポジトリに、新規ファイルを登録する時使用します。
add_popup
項目 | 説明 |
---|---|
Path | 対象ファイルリストを表示します。 |
リストからチェックされたファイルリストのみリポジトリに登録されるようにスケジュールされ、その後に別々に、"Commit"を実行するとリポジトリに実際に反映されます。
ファイル削除(Delete)
接続されたリポジトリで、ファイルを削除する時使用します。
delete_popup
項目 | 説明 |
---|---|
Message | 削除メッセージを入力します。 |
Path | 削除するファイルを表示します。 |
指定された対象は、リポジトリで削除されるようにスケジュールされ、その後に別々に、"Commit"を実行するとリポジトリに実際に反映されます。
メニューの[Edit>Delete]を選択して削除しても、[Svn>Delete]を選択したのと同じ状態にファイルを処理します。ただし、[Svn>Delete]を選択した場合には、Delete状態に変更した理由をメッセージとして入力することができます。
nexacro studioではなくWindowsエクスプローラや他のツールでリポジトリに登録されたファイルをSVNツールを使用せずに削除した場合は、該当ファイルの状態がmissingで処理されます。状態がmissingで処理された場合には、updateを使用してファイルを復元することができます。
名前変更(Rename)
対象の名前を変更します。Rename機能は、対象ファイルのコピーを変更する名前にコピーして「Add」し、既存のファイルを「Delete」する方式で進行され、すぐにコミットコマンドを実行します。
名前を変更しても、メニューの[SVN>Show Log]で前の変更履歴をすべて確認することができます。
アップデート(Update)
ローカルの作業用コピーに接続されているリポジトリの最新バージョンに変更します。 Updateコマンドは、ファイルのSVNステータスが確認された後にのみ活性化され、別の入力ダイアログなく、コマンドの実行結果ダイアログのみが表示されます。
ファイルロック
ファイルロック(Lock)
Unlock状態の対象を、接続されたユーザーが先行獲得するLockの状態に変更します。
lock_popup
項目 | 説明 |
---|---|
Message | ロックメッセージを入力します。 |
Path | ロック状態に変更する対象のファイルのリストを表示します。 |
ロック解除(UnLock)
接続されたユーザーの情報で、Lockされた対象を Unlock状態に変更します。
unlock_popup
項目 | 説明 |
---|---|
Path | 対象ファイルのリストを表示します。 |
変更記録活用
変更履歴(Show Log)
対象のログを表示します。
show_log_popup
以前のリビジョン比較(Compare with Previous Revision)
作業コピーと以前の revisionのれポジ取りの対象を比較して相違点を表示します。該当機能はオプションに、‘Diff Viewer execute file path’が設定されている状態で正常動作します。
次は、Compare with Previous Revisionを実行して、外部Diffツールを使用してmain.xfdlファイルの最終リビジョンとその前のリビジョンを比較する画面です。
compare_with_previous_revision
nexacro studioのインストール時にdiff、mergeツールを基本的には提供しておりません。現在常用しているツールを使用するか、オープンソースやフリーウェアを設置して使用することができます。
http://winmerge.org/(オープンソース)
https://sourcegear.com/diffmerge/(フリーウェア)
修正を元に戻す(Revert)
以前の作業内容をキャンセルして、作業コピーのステータスを戻します。
revert_popup
項目 | 説明 |
---|---|
Path | 対象ファイルリストを表示します。 |
リフレッシュ(Refresh Status)
作業コピーの SVN ステータス状態をリフレッシュする機能です。
リポジトリブラウザ
リポジトリのファイルリストを表示し、SVN機能をサポートする Subversion専用クライアントツールです。
repository_browser_popup
項目 | 説明 |
---|---|
Folder Tree | 接続されたリポジトリのフォルダをツリーに表示します。 |
File List | 現在選択されたフォルダのファイルリストをリストに表示します。 |
リポジトリを選択した状態では、次のようなポップアップメニューがサポートされます。
repository_browser_context_menu
項目 | 説明 |
---|---|
Check Out | 選択されたリポジトリを、指定されたクライアント位置にチェックアウトします。 |
Export | 選択されたリポジトリを指定されたクライアント位置にエクスポートします。エクスポートされたファイルは、チェックアウトされない状態でリポジトリと連動されません。 |
Show Log | 選択された対象のログを表示します。 |
Refresh Status | フォルダの情報をリフレッシュします。 |
Create Folder | 指定されたリポジトリに下位フォルダを生成します。 |
Add Folder | 選択されたフォルダのファイルを指定されたリポジトリに追加します。 |
Add File | 選択されたファイルを指定されたリポジトリに追加します。 |
Rename | 対象リポジトリの名前を変更します。 |
Delete | 対象リポジトリを削除します。 |
ファイルを選択した状態では、次のようなポップアップメニュをサポートします。
repository_browser_context_menu_file
項目 | 説明 |
---|---|
Show Log | 選択された対象のログを表示します。 |
Refresh Status | ファイル情報を最新の状態に変更します。 |
Rename | 対象ファイルの名前を変更します。 |
Delete | 対象ファイルを削除します。 |
Save as | 対象ファイルのコピーを生成します。 |
チェックアウト(Check Out)
リポジトリブラウザでフォルダを選択し、目的の場所にチェックアウトすることができます。
ファイルエクスポート(Export)
リポジトブラウザでフォルダを選択した後、目的の場所にファイルをエクスポートすることができます。エクスポートされたファイルは、リポジトリと連動しません。
SVN Output
SVNの機能実行結果を表示するウィンドウ。
SVN_output_window
SVN Explorer
SVNで管理されるプロジェクトとリポジトリに属するディレクトリ/ファイルの状態情報を表示するウィンドウです。
Check_for_Modification_window
上部のメニューボタンをクリックすると、表示する情報を選択することができます。
項目 | 説明 | |
---|---|---|
Show unmodified | 変更状態ではない項目も表示します。 | |
Show unversioned | SVNに登録されていない項目も表示します。 | |
Refresh list | 現在のリストを最新の状態に更新します。 |
Subversion Status
Subversionの状態によって、nexacro studioのプロジェクトエクスプローラに、次のように表示されます。
項目 | 説明 |
---|---|
added | ファイルがリポジトリに Addとして登録されていない状態です。 |
conflicted | Update中にトラブルが発生した状態です。 |
locked | ファイルがロックされた状態です。 |
modified | ファイルが修正された状態です。 |
nonversioned | Repositoryに登録されていないファイルです。 |
normal | 修正された内容がない状態です。 |
ギット(Git)
ギット使用設定
Gitオプション設定
ギットクライアントをインストールすると、nexacro Studioメニュー[Tools>Options]ウィンドウで、[Source Control]項目を選択して、Source Control Management Typeリストで「Git」を選択します。
nexacro Studioでギット使用時にサポートするオプションは下記の通りです。
オプション | 説明 |
---|---|
General(必須) | |
Executable file path | ギットクライアント実行可能ファイルをインストールしたパスを入力します。 デフォルトパスにgit.exeファイルがインストールされている場合は、自動的にオプション値が指定されます。 |
User Name | ギットの動作に必要なユーザー名を入力します。 |
User E-mail | ギットの動作に必要なユーザーの電子メールアカウントを入力します。 |
Git Management | |
Interact with generate path | Generate Pathもソース管理の適用有無を設定します。 |
Push after commit | リモートリポジトリが接続されている場合は、Commitコマンドを実行した後に自動的にPushコマンドまで実行するかどうかを設定します。 |
Pull before push | リモートリポジトリが接続されている場合は、Pushコマンドを実行した後に自動的にPullコマンドまで実行するかどうかを設定します。 |
Project Management | |
Pull when opening the project | プロジェクトを開いたときにリモートリポジトリが接続されている場合は、最新項目を取得します。(Pull) |
Push when closing the project | プロジェクトを閉じるときにリモートリポジトリが接続されている場合は、変更事項を発行します。(Pull→Push実行) |
File Management(xfdl、xjsファイルのみ適用) | |
Commit added file | ファイルの追加時にCommitの実行有無を設定します。 |
Commit saved file | ファイルの保存時にCommitの実行有無を設定します。 |
Externals | |
Diff tool path | 「Show Diff」コマンド時に使用する実行ファイルのパスを入力します。 該当オプションを設定しない場合は、「Show Diff」機能を使用することができません。 |
Merge tool path | 「Edit Conflicted」コマンド時に使用する実行ファイルのパスを入力します。 該当オプションを設定しない場合は、「Edit Conflicted」機能を使用することができません。 |
Merge tool arguments | Merge Toolで使用するArgument値を入力します。 |
下記の項目は、3つのオプションのいずれかを選択することができます。
Commit added file
Commit saved file
Prompt for Commit:ユーザー確認後Commit実行
Commit Automatically:自動的にCommit実行
Do nothing:オプションを使用しない
「Executable file path」項目の右側に「?」ボタンをクリックすると、ギットクライアントのインストールに必要な情報を確認することができます。
ギットクライアントは2.13.0以降のバージョンをインストールする必要があります。
ギットクライアントのインストールに関連する案内は別途提供しません。インストール関連情報は、下記のリンクを参照してください。
Merge tool arguments指定
[Edit Conflicted]コマンド時に使用するMerge Tool実行ファイルを指定した場合は、該当ツールに合ったarguments値を入力する必要があります。「Merge tool arguments」項目の右側に「?」ボタンをクリックすると、関連置換情報を表示します。
主に使用するMerge tool argumentsは下記のように入力することができます。
以下の内容は入力例として提供するのであり、当該ツールのバージョンによって異なる場合があります。
Merge tool | Arguments |
---|---|
WinMergeU.exe | $theirs$ $mine$ $merged$ |
TortoiseMerge.exe | /base:$base$ /their:$their$ /mine:$mine$ merged:$merged$ |
CodeMerge.exe | /tf=$theirs$ /mf=$mine$ /rf=$merged$ /bf=$base$ |
Meld.exe | $theirs$ $mine$ $merged$ |
p4Merge.exe | $base$ $theirs$ $mine$ $merged$ |
sgdm.exe | /t1="Mine" /t2="Base" /t3="Their" /r=$merged$ $mine$ $base$ $theirs$ |
kdiff3.exe | $base$ $mine$ $theirs$ -o $merged$ --L1 Base --L2 Mine --L3 Theirs |
プロジェクト開始
ローカルリポジトリにプロジェクトを登録
ローカルリポジトリに管理されていないプロジェクトを開くと、登録有無を確認します。「Yes」ボタンをクリックすると、該当プロジェクトの「Init New Repository」コマンドを実行します。「No」ボタンをクリックしてもメニューの[Git>Init New Repository]を選択して、プロジェクトを登録することができます。
プロジェクトを登録すると、Gitローカルリポジトリが初期化(init)され、ファイルを追加(add)し、反映(commit)します。
リモートリポジトリにプロジェクトを登録
メニューの[Git>Set Remote Repository]を選択してリモートリポジトリの接続を設定することができます。Interact with generate pathオプションをTrueに設定した場合には、Generate Repositoryを指定することができます。
項目 | 説明 |
---|---|
Remote Name | リモートリポジトリの別称を指定します。 デフォルト設定値は、「origin」です。 |
Remote URL | リモートリポジトリのパスを指定します。 Local、HTTP、SSH、Gitの4つのプロトコルを設定することができます。 |
Remote Branch Name | ローカル作業内容を発行するブランチを指定します。 デフォルト設定値は、「master」です。 |
リモートリポジトリからプロジェクトをダウンロード
メニューの[Git>Clone Repository]を選択すると、リモートリポジトリに登録されたプロジェクトをローカルにダウンロードして、プロジェクトを開始することができます。
項目 | 説明 |
---|---|
Remote Repository | リモートリポジトリのパスを指定します。 |
Target Path | プロジェクトをダウンロードするローカルパスを指定します。 |
Open project after clone | Cloneコマンドを実行した後、プロジェクトファイル(xprj)がある場合は、プロジェクトを開くかどうかを設定します。 |
Cloneコマンドを実行した場合、Remote Repositoryに設定されたリモートリポジトリは、プロジェクトのリモートリポジトリに自動的に設定されます。
Target Pathディレクトリは空のディレクトリのみを使用することができます。ディレクトリ内にファイルや他のディレクトリがある場合には、Cloneコマンドを処理することができません。
モートリポジトリの登録情報を削除
メニューの[Git>Unset Remote Repository]を選択すると、ローカルリポジトリから追跡しているリモートリポジトリの情報を削除します。
変更項目処理
新しいファイルの追加、もしくは既存のファイルの編集
プロジェクトに新たに追加したファイルは、Project ExplorerもしくはResource Explorerウィンドウで、「unversioned」状態で表示されます。既存のファイルを編集した場合には、「modified」の状態で表示されます。Git Explorerで追加・変更されたファイルもしくは上位ディレクトリ情報のみを表示します。また、各ファイルの状態情報を確認することができます。
ローカルリポジトリに変更内容を反映
Project ExplorerもしくはResource Explorerウィンドウで変更されたファイルを反映するには、ファイルを選択して、コンテキストメニューの[Git>Commit]項目を選択します。Git Explorerウィンドウでは反映する対象ファイルを選択して、「Commit」ボタンをクリックすると、変更内容を反映することができます。
Commit Messageを作成しない場合はCommitできるボタンが有効になりません。メッセージ入力ウィンドウにCommit作業の説明を入力する必要があります。
リモートリポジトリに接続されている場合、Push after commit項目をチェックすると、Commit操作の後にリモートリポジトリのPush作業を進めます。該当項目のチェック時には、Gitに関する基本オプションも一緒に変更されます。
リモートリポジトリに変更内容を反映
リモートリポジトリに接続されている場合は、ローカルストレージにCommitした変更内容をPushコマンドで発行することができます。メニューの[Git>Push]もしくはGit Explorerウィンドウで「Push」ボタンをクリックします。
Git ExplorerウィンドウでCommit項目をダブルクリックするか、メニューの[Git>Push]ウィンドウを開くと、ファイルの変更内容を確認することができます。
衝突が発生したファイルの処理
他のユーザーと同じファイルを作業した場合には、衝突が発生することがあります。衝突が発生した場合、「unmerged」状態に表示されます。衝突が発生したファイルを直接開いてコードを変更することができます。Gitオプションで「Merge tool path」を登録した場合には、メニューの[Git>Edit Conflicted]項目を選択して、マージツールを実行してコードを変更することができます。
自動マージされる場合
ローカルリポジトリとリモートリポジトリのファイルが異なる場合には、ローカルリポジトリをCommitした後、Pushコマンドの実行時に下記のようなメッセージが表示されることがあります。このような場合には、先にPullコマンドを実行した後にPushコマンドを実行します。
Pullコマンドの実行時に自動マージが正常に処理される場合には、Git Outputウィンドウに該当情報を出力します。マージされたファイルが開いている場合には、ファイルをリロードします。
衝突が発生した場合
Pullコマンドの実行時に自動マージが処理されない場合には、下記のようなメッセージを出力して、ファイル内の衝突が発生した情報を表示します。
衝突が発生したファイルは、nexacro StudioのXMLエディタで開きます。「HEAD」の下にあるコードがPullコマンド実行前にLocal RepositoryにCommitされたコードです。「=======」の下にあるコードは、Remote Repositoryから取得したコードです。変更されたコードを確認して変更すると、衝突を解決することができます。
衝突が解決されると、Commit後Pushコマンドを実行します。
Merge toolを実行して衝突を解決
衝突が発生したコードが簡単な場合には、XMLエディタでも簡単に変更することができますが、衝突が発生したコードが複雑な場合には、外部Merge toolを使用して衝突を解決することができます。
Merge toolを使用している場合、ギットクライアントで一時ファイルを生成します。正常に衝突を解決して保存した場合には、一時ファイルを削除しますが、たまに削除できない場合があります。一時ファイルの制御はギットクライアントで処理しますので、nexacro Studioで強制的に一時ファイルを削除しません。必要な場合、該当フォルダ内の一時ファイルを直接削除する必要があります。
ブランチの生成・変更
メニュー[Git>Checkout Branch]を選択すると、ブランチを変更、もしくは新しいブランチを生成することができます。
新しいブランチを生成
既存のブランチリストにないブランチ名を入力すると、新しいブランチが生成されます。
ブランチの変更
ブランチリストから別のブランチを選択すると、ブランチを変更することができます。
ブランチの状態を確認
メニューの[Git>Show Project Log]もしくは[Git>Show File Log]で、Commitもしくはファイル単位でブランチの状態を確認することができます。
項目 | 説明 |
---|---|
Commit | Commit SHA-1チェックサム情報 |
Message | Commitメッセージ |
Author | 作業者 |
Date | 作業時間 |
Branch | Commit作業別のブランチ情報 黄:現在の作業ブランチ 緑:ローカルリポジトリブランチ ピンク:リモートリポジトリブランチ |
項目をダブルクリックするか、コンテキストメニューの[Show Commit]項目を選択すると、Commit情報ウィンドウを表示します。
作業ウィンドウ/ステータス情報
Git Output
Gitの機能の実行結果を表示するウィンドウです。実行中にエラーが発生した場合には、ハイライトカラーで表示されます。
Git Explorer
現在のプロジェクトで変更された内容を示して、必要な作業を処理することができます。Push領域とCommit領域の2つに区分することができます。Interact with generate pathオプションをTrueに設定した場合には、Project、Generateを区別する上部タブボタンが表示されます。
Push
リモートリポジトリが接続されている場合は、リモートリポジトリに発行されていないCommit項目を表示します。Pushボタンをクリックすると、リモートリポジトリで発行することがあります。
Commit
ローカルリポジトリからCommitできるリストを表示します。Commitメッセージを入力した後Commitボタンをクリックすると、ローカルリポジトリでCommitを実行します。
Project領域のGit Explorerで実行される動作は、Menuで実行するのと同様にGenerateパスの項目と関連して(Commitの実行時にGenerate項目もCommit実行)処理します。ただし、Project領域とGenerate領域の項目の状態が違って連携で処理できない場合、Generate領域のExplorerでGenerate領域の項目を制御することができます。Generate ExplorerはProject領域の項目と関連して処理されません。
Git Status
状態に応じてProject Explorer/Git Explorerにステータスアイコンが表示されます。
Gitはディレクトリが状態値を持っていないので、下位項目の状態値の優先順位に基づいてディレクトリにステータスアイコンが表示されます。上の画像でFrameBaseディレクトリは下位Form項目の状態値の優先順位に基づいてConflictedステータスアイコンを表示します。状態値の優先順位は下記の通りです。
Conflicted > Modified > Added > Unmodified > Unversioned
Project Explorerでプロジェクト名はxprjファイルとして管理されますが、最上位パスのディレクトリとして使用されいますので、下位項目の優先順位に基づいてステータスアイコンを表示します。