Enterprise Server のインストールには、バージョン管理サービスによるローカライズ(および集中管理)されたバージョン管理機能が提供されます。このサービスにより、必要な場所で、ローカルで、外部のVCS管理ソフトウェアを探したり購入したりすることなく、バージョン管理を利用できます。
このように集中管理された方法で設計リポジトリを定義することで、組織は設計者がアクセス・利用できるリポジトリを完全に管理できます。
Relevance of the information on this page:
Enterprise Server を新規インストールすると、すべての Workspace 設計プロジェクトを格納するための Git ベースの設計リポジトリが 1 つだけ提供されます。それだけです!これにより、Enterprise Server のローカルバージョン管理サービスに関するセットアップや複雑さを回避できます。設計者全員がアクセスし、リリースできる単一の設計リポジトリ Versioned Storage があります。そのため、Workspace のブラウザーインターフェースの VCS ページは情報提供のみとなり、新しいリポジトリの追加や、単一の Git リポジトリの変更・削除はできません。このページの情報は該当しません。
以前のバージョンやSVNリポジトリの利用が有効だったサーバープロダクトから Enterprise Server をアップグレードした場合、アップグレード後も引き続き有効になります(Altium On-Prem Enterprise Server のライセンスを更新してください)。これにより、従来の設計フローを継続して利用できます。この場合、ローカルバージョン管理サービス(SVNのみ)を通じてリポジトリを作成したり、外部リポジトリ(SVNまたはGit)に接続したりできます。このページの情報は引き続き有効です。
Important: それ以外の場合、
ボタンはグレーアウトされ、リポジトリの作成・追加はできません。
主な利点
この集中管理されたバージョン管理サービスを利用する主な利点は2つあります。
-
Altium Designer と SVN の両方で共通のユーザー・権限管理が可能です。Enterprise Server にサインインすると、バージョン管理サービスはそのセッション/認証情報で動作します。
-
Enterprise Server(Enterprise Server Workspace のブラウザーベースインターフェースの VCS ページ(Admin – VCS))で定義されたリポジトリは、ログイン時に自動的に Altium Designer に反映されるため、ユーザーはURLやプロトコル、パスワードなどを気にする必要がありません。Enterprise Server で一度設定すれば、必要なユーザーと共有できます。
新しい Enterprise Server ユーザーが作成されると、そのユーザーの定義済み Password は Enterprise Server と SVN サービスの両方に保存されます(後者は前者からパスワードを直接取得できないため)。
リポジトリの作成
リポジトリはローカルバージョン管理サービス(SVNのみ)を通じて作成するか、外部リポジトリ(SVNまたはGit)に接続できます。すべてのリポジトリは、Workspace のブラウザーベースインターフェースの VCS ページ(Admin – VCS)で一元管理されます。管理内容は以下の通りです。
-
表示名、説明、リポジトリパス
-
アクセス権の設定(ローカルバージョン管理サービスで定義されたリポジトリの場合はグループ単位も可)
-
利用可否(中央で追加・削除でき、個々の設計者が独自にリポジトリを作成・接続する必要がありません)
デフォルトで2つの設計リポジトリが利用可能です。ローカルバージョン管理サービスによって提供され、DefaultRepository(SVNリポジトリ)とVersioned Storage(Gitリポジトリ)という名前が付けられています。DefaultRepositoryリポジトリは名前の変更はできませんが、説明の追加、ユーザーアクセスの管理、削除が可能です。Versioned Storageリポジトリは Workspace プロジェクトの統合ストレージ専用であり、名前の変更、共有、削除はできません。
Altium Designer ユーザーが Workspace にサインインすると、利用可能な設計リポジトリが自動的にPreferencesダイアログのData Management – Design Repositoriesページに追加されます。このリストには、このPreferencesページから手動で追加された「非管理」リポジトリも含まれます。
組織の設計リポジトリへのアクセスを中央で定義できます。リポジトリは Enterprise Server インストール内のローカルバージョン管理サービスで定義するか、Altium Designer の組み込みSVNやサードパーティのSVN/Gitサービスを利用して外部に定義できます。アクセス制御は Workspace のブラウザーベースインターフェースのVCS ページで行います。ユーザーが Workspace にサインインすると、利用可能な設計リポジトリが自動的にData Management – Design RepositoriesページのPreferences ダイアログに追加されます。
リポジトリの追加
設計リポジトリを追加するには、ページ右上の
ボタンをクリックします。Add Repositoryウィンドウが表示されるので、ここでリポジトリを定義します。
ローカルバージョン管理サービスで作成できるのはSVNタイプのリポジトリのみです。既存(外部)のリポジトリはSVNまたはGitのいずれかをリンクできます。
必要なプロパティは、ローカルバージョン管理サービスで新規リポジトリを作成する場合と、既存の外部リポジトリをリンクする場合で異なります。
-
New – リポジトリ名と説明を入力します。
-
Existing – 名前と説明に加え、リポジトリのURL 、およびアクセスに必要な有効な認証情報(User Name、Password)を入力します(必要な場合)。
Enterprise Server 内部のリポジトリを作成する場合、名前は英大文字・小文字・数字(A-Z, a-z, 0-9)で始まり、アンダースコア、ハイフン、スペースは名前の中間に使用できます。以下の単語は使用できません:AUX、COM1-COM9、LPT1-LPT9、CON、NUL、PRN。外部リポジトリには命名制限はありません。
Enterprise Server のローカルバージョン管理サービスを通じて新しいSVNベースの設計リポジトリを作成するか、Enterprise Server 外部で作成された既存リポジトリ(SVNまたはGit)にリンクします。
リンクされた外部設計リポジトリは、リポジトリ一覧でExternal プロパティにチェックが入っていることで区別できます(
)。
後から設計リポジトリのプロパティを編集するには、該当リポジトリのEdit コントロール(
)をクリックします。設計リポジトリを削除するには、該当リポジトリのRemove コントロール(
)をクリックします。
リポジトリ一覧は自動的にNameのアルファベット順でソートされ、バージョン管理サービスで定義されたローカルリポジトリが先に、外部リポジトリがその後に表示されます。GitベースのVersioned Storageリポジトリ(変更・削除不可)は常にリストの最上部に表示されます。
リポジトリの共有
設計リポジトリを集中管理したら、基板設計を担当する設計者を含め、必要な人が該当リポジトリにアクセスできるようにする必要があります。これはリポジトリの共有、つまりアクセス権限の管理によって実現します。そのためには、リポジトリのShare コントロール(
)をクリックします。
Manage Permissionsウィンドウが表示され、リポジトリを他のユーザーと共有するためのすべてのコントロールが用意されています。
設計リポジトリが集中管理されていれば、他者との共有は各リポジトリの権限を管理するだけで簡単に行えます。
注意点:
-
Enterprise Server のバージョン管理サービスで作成されたローカルリポジトリ(外部ではない)の場合、デフォルトの権限はリポジトリ作成者とAdministratorsグループに共有され、両者ともフルの読み書き権限を持ちます。
-
外部リポジトリの場合、デフォルトでは誰にも共有されません(インターフェース経由で接続を追加したユーザー自身も含む)。
-
ローカルリポジトリ(外部ではない)のみ、Enterprise Server で定義されたグループや公開での共有が可能です。グループは個別ユーザーの後にリストされます。
-
権限については、Can Writeオプションが有効(
)な場合、ユーザー/グループは読み書き権限を持ちます。無効の場合は読み取り専用権限となります。
Be Aware: 内部設計リポジトリを共有する際の権限設定は、期待通りに動作しない場合があります。内部設計リポジトリ自体をサーバーユーザーに読み取り専用で共有しても、そのユーザーはそのリポジトリ内に新しい Workspace プロジェクトを作成でき、作成されたプロジェクトフォルダーにはフルの読み書き権限を取得できます。この誤動作は、そのユーザーが作成した新規 Workspace プロジェクトおよびそのフォルダーにのみ適用されます。他のフォルダーには書き込み権限はありません。
-
既存のユーザー/グループの共有アクセスを削除するには、該当するRemove コントロール(
)をクリックします。
Sharing a Local Repository with a Workspace User
ローカル(外部ではない)リポジトリを他の Workspace ユーザーと共有するには:
-
Add User コントロールをManage Permissionsウィンドウでクリックします。
-
表示されたAdd Usersウィンドウで、Select Users to be addedフィールドに Workspace ユーザーのフルネーム、ユーザー名、またはメールアドレスを入力し始めると、一致するユーザーのリストがポップアップ表示されます。このリストから必要なユーザーを選択します。複数ユーザーの選択も可能です。ユーザーを削除するには、名前の右側にある削除クロスをクリックします。
-
Permissionフィールドでユーザーの権限を設定します。ドロップダウンからReadアクセスまたはRead/Writeアクセスを選択します。
-
ボタンをクリックしてユーザー追加を確定し、Manage Permissionsウィンドウに戻ります。
-
ボタンをManage Permissionsウィンドウでクリックします。
既存ユーザーの権限を編集するには、Can WriteオプションをManage Permissionsウィンドウで使用し、読み書き権限(有効)と読み取り専用権限(無効)を切り替えます。
Sharing a Local Repository with a defined Group
リポジトリがローカルバージョン管理サービスで作成された場合(外部リポジトリではない)、Workspace で定義されたグループとも共有できます。ローカル(外部ではない)リポジトリを他のグループと共有するには:
-
Add Group コントロールをManage Permissionsウィンドウでクリックします。
-
表示されたAdd Groupsウィンドウで、Select Groups to be addedフィールドにグループ名を入力し始めると、一致するグループのリストがポップアップ表示されます。このリストから必要なグループを選択します。複数グループの選択も可能です。グループを削除するには、名前の右側にある削除クロスをクリックします。
-
Permissionフィールドでグループの権限を設定します。ドロップダウンからReadアクセスまたはRead/Writeアクセスを選択します。
-
ボタンをクリックしてグループ追加を確定し、Manage Permissionsウィンドウに戻ります。
-
ボタンをManage Permissionsウィンドウでクリックします。
既存グループの権限を編集するには、Can WriteオプションをManage Permissionsウィンドウで使用し、読み書き権限(有効)と読み取り専用権限(無効)を切り替えます。
Sharing a Local Repository with All Users
リポジトリがローカルバージョン管理サービスで作成された場合(外部リポジトリではない)、そのリポジトリをすべての Workspace ユーザーと共有することも可能です。ローカル(外部ではない)リポジトリを Workspace にサインインできるすべてのユーザーと共有するには:
-
Add Anyone コントロールをManage Permissionsウィンドウでクリックします。
-
Anyoneエントリが共有エンティティのリストに直接追加され、自動的に読み書き権限で共有されます。
-
ボタンをManage Permissionsウィンドウでクリックします。
Anyoneエンティティの権限を編集するには、Can WriteオプションをManage Permissionsウィンドウで使用し、読み書き権限(有効)と読み取り専用権限(無効)を切り替えます。
Sharing an External Repository with a Workspace User
外部リポジトリを Workspace ユーザーと共有するには:
-
Add User コントロールをManage Permissionsウィンドウでクリックします。
-
Add Users ウィンドウが表示されたら、Select Users to be added フィールドにWorkspaceユーザーのフルネーム、ユーザー名、またはメールアドレスを入力し始めると、一致するユーザーのリストがポップアップ表示されます。このリストから必要なユーザーを選択してください。ユーザーを削除するには、名前の右側にある削除(×)をクリックします。
SVN User フィールドには、外部リポジトリ(SVNまたはGit)に登録されていてアクセス権を持つ名前を入力します。通常は、リポジトリに登録されているユーザーの一致する名前となります。
-
ボタンをクリックしてユーザーの追加を確定し、Manage Permissions ウィンドウに戻ります。さらにユーザーを追加する場合は、上記手順2に従いAdd User をクリックしてください。下記2つ目の例の画像では、ユーザーBarryが一般的なServerAdmin名ではなく、リポジトリに一致する名前BarrySmithを使用するように設定されています。
-
ボタンをManage Permissions ウィンドウでクリックします。
Workspaceユーザーは、外部SVNリポジトリ内の任意の有効なユーザー名にマッピングすることができ、複数のWorkspaceユーザーを1つの外部SVNリポジトリのユーザー名にマッピングすることも可能です。
-
アクセス権(読み取り専用または読み書き)は、最終的には外部リポジトリのインストールによって決定されます。Enterprise Serverは外部リポジトリのユーザー認証に影響を与えず、これらの権限をEnterprise Server側から管理することはできません。
-
Altium DesignerからEnterprise Serverの外部リポジトリへアクセスする際(新規プロジェクト作成時など)、以前に接続認証情報を入力していない場合は認証情報の入力が求められることがあります。一度入力した認証情報は、その後のリポジトリアクティビティで自動的に使用されます。
ローカルSVNデザインリポジトリへの外部アクセス
Enterprise Serverのローカルバージョン管理サービスを通じて作成されたデザインリポジトリは、TortoiseSVNなどのSVNクライアントを使用してアクセスできます。通常のネットワークプロトコル(現在はsvn://がサポートされています)を使用してアクセスします。正しいリポジトリアドレスは、以下の2か所から取得・コピーできます。
-
WorkspaceのブラウザーインターフェースのVCSページ—対象リポジトリのRepository Pathフィールド内。
Enterprise Serverから作成された「内部」リポジトリは、Enterprise Serverに対する相対パスでアドレスが表示されます。これはホストPCのlocalhostアドレスです。
Altium DesignerやEnterprise ServerホストPC以外のアプリケーションから見た場合、リポジトリアドレスパスはホストPC名に基づきます。
表示されるアドレスは、Enterprise Serverがインストールされている同じマシンからアクセスしている場合(svn://localhost/<RepositoryName>)か、リモートPCからアクセスしている場合(svn://<ComputerName>/<RepositoryName>、ここでComputerNameはEnterprise Serverが存在するPC名)かによって異なります。
取得したアドレスをSubversionクライアントのリポジトリブラウジング機能で使用してください。初回アクセス時には中間のAuthenticationダイアログが開き、有効な接続認証情報の入力が求められます。Workspaceユーザーアカウントの名前とパスワードを入力してください。これらの認証情報が有効となる条件は以下の通りです。
-
ユーザーアカウントがEnterprise Serverでリポジトリ作成after後に追加されている場合。作成済みリポジトリに適用されるユーザーは、Enterprise Server PCの
\ProgramData\Altium\Altium365Data\Repositoryフォルダー内にあるpasswdファイルで確認できます(下記参照)。
-
リポジトリがAdd Userコマンドを使ってサーバーの Manage Permissions for <repository name>ウィンドウからそのユーザーアカウントに共有されている場合。これはEnterprise Server PCの
\ProgramData\Altium\Altium365Data\Repositoryフォルダー内にあるリポジトリのauthzファイルで確認できます。
Enterprise ServerインストールのローカルSVNベースバージョン管理サービスを通じて作成されたデザインリポジトリの内容をブラウズする様子。
ローカルバージョン管理サービスを通じて作成されたデザインリポジトリの内部データは、(Enterprise Serverのデフォルトインストールの場合)\ProgramData\Altium\Altium365Data\Repositoryフォルダー内の対応するサブフォルダーに保存されます。IT担当者による保守目的以外で、このフォルダー内のファイルを変更・編集しないことを推奨します。
Enterprise ServerとVCSユーザーの同期
Workspaceの新規ユーザー作成時、そのユーザーの定義済み認証情報(User NameおよびPassword)は、Enterprise Serverのデータベースとバージョン管理サービスの両方に保存されます。後者は前者からパスワードを直接取得できないためです。パスワードはバージョン管理サービスの\ProgramData\Altium\Altium365Data\Repository\passwdファイルに平文で保存されます。
このリストのエントリは、Altium Designerを通じてEnterprise Server SVNリポジトリにアクセスする際に使用されます。たとえば、最初のSVNリポジトリ作成時に既にWorkspaceユーザーが存在していた場合など、ユーザーの認証情報がファイルに含まれていない場合があります。この場合は、該当する名前/パスワードの組み合わせをpasswdファイルに手動で追加するか、Workspaceの各ユーザープロファイルでパスワードを再入力してください。後者の方法では、Enterprise Server PCへの直接アクセスなしでpasswdファイルが自動的に更新されます。
Enterprise Serverのデフォルトインストールでは、バージョン管理サービス用のユーザー認証情報は関連するPasswdファイルに保存されます。
リポジトリの削除
Enterprise Serverのバージョン管理サービスからリポジトリを削除するには、WorkspaceのブラウザーベースインターフェースのVCSページで、そのリポジトリに関連付けられたRemoveコントロール(
)をクリックします。
Altium DesignerのPreferencesダイアログのData Management – Design Repositoriesページからリポジトリを削除しても、そのAltium Designerインスタンスでリポジトリが使用できなくなるだけで、Enterprise Serverのバージョン管理サービスからリポジトリ自体が削除されるわけではありません。Enterprise Serverからサインアウトして再度サインインすると、そのリポジトリは再びAltium Designerの利用可能なリポジトリ一覧に表示されます。
外部リポジトリエントリは、リポジトリにプロジェクトが含まれているかどうかに関係なく削除できます。一方、ローカルリポジトリ(Enterprise Serverのバージョン管理サービスを通じて内部的に作成されたもの)は、1つ以上のプロジェクトが含まれている場合は削除できません。この場合は警告が表示され、先にプロジェクトを削除する必要があります。
さらに、ローカルリポジトリにプロジェクトが含まれていない場合でも、実際には削除されず、アーカイブディレクトリ(デフォルトのEnterprise Serverインストールでは\ProgramData\Altium\Altium365Data\RepositoryDumps)に移動されます。リポジトリは、ユニークIDのプレフィックス(例:775f6c22-b9a1-468c-9f1f-4f217bb3be6b_central design repository.dump)付きのDumpファイルとして保存されます。