Gitベースのバージョン管理
Git タイプのリポジトリは Altium Designer の外部で作成され、ローカルの作業用 Git リポジトリの内容には、そのホストフォルダーからファイルを開くことでアクセスします。リモートおよびローカルの作業用 Git リポジトリの管理は通常、社内システムや外部の Git ツールを通じて行われ、ファイルレベルの操作(Commit、Push、Update など)は Altium Designer の編集環境で処理されます。
Git バージョン管理に追加
分散型バージョン管理システムとして、Git は SVN とは異なるワークフローを使用しますが、Altium Designer で既存のプロジェクトファイルを扱う場合、その違いは最小限です。要するに、Git は単一のリポジトリ対象への依存に重点を置くのではなく、複数のリポジトリ間でのデータ転送を適用します。
► 詳細については Git website を、適用される原則の概要については Version Control Essentials を参照してください。
Git VCS システムは通常、必要に応じて複数の Git リポジトリをホストできる集中管理型のリモート Git サーバーを基盤としています。Git は高速かつ軽量であるため、プロジェクトごとにリモートリポジトリを作成し、それをそのプロジェクトに関わる各ユーザー向けの作業用リポジトリとして clone(コピー)する運用に適しています。ユーザーの作業用 Git リポジトリで更新されたファイルは、その後 Git サーバー上のリモートリポジトリへ「push」され、同期が行われます。
Altium Designer のプロジェクトを Git システム上に構築する方法は、社内インフラや運用方法によって異なり、Altium Designer の外部にある tools やプロセスが関与します。ただし、いったんプロジェクトがバージョン管理システムに登録され、ローカルの作業用リポジトリとして利用可能になれば、Altium Designer で Git VCS を扱うことは、実質的に SVN VCS を扱う場合とほぼ同じです。
プロジェクトを Git に追加する
例として、既存の Altium Designer プロジェクトは、基本的な Git command line tools を使用してローカル Git リポジトリに追加できます。この方法では、プロジェクトフォルダーがローカル(作業用)Git リポジトリとなり、利用可能なリモート Git リポジトリにリンクされ、最終的に更新されます。
ここでは、ツールを使用して次のことを行います。
- プロジェクトフォルダー内に作業用 Git リポジトリを作成(initialize)する。
-
追加して、プロジェクトファイルを Git バージョン管理下に置く。
*.*ファイル指定では、フォルダーではなくファイルが追加されます。 -
Web サーバー上の共有リモート Git リポジトリへの link reference を指定する。
PCrepoは、リモートリポジトリ URL に対して指定されたローカルエイリアスです。
プロジェクトを Altium Designer で開くと、Projects パネルおよび Storage Manager パネル内のファイルのステータスは Scheduled for Addition(
)になります。その後、作業用リポジトリに Commit すると、ファイルは Ahead of Server ステータス(
)に変わります。これは、その時点ではまだリモート Git リポジトリでバージョン管理下にないためです。
追加予定およびサーバーより先行としてスケジュールされたファイル
Push コマンドにより、ローカルリポジトリのファイルがリモート Git サーバーに更新されます。この際、対象リポジトリに対する有効な認証情報の入力を求められる場合がありますが、これは一度だけの処理です。
これで Git バージョン管理下に完全に置かれた Altium Designer プロジェクトは、リモート Git リポジトリを通じて他のユーザーも利用できるようになります。たとえば別のユーザーは、そのリポジトリをローカルマシンに clone し、共同作業のワークフローの中で編集したファイルを最終的にリモートリポジトリへ push できます。
Git リポジトリを clone する
Git バージョン管理に追加されたローカルプロジェクトは、プロジェクトのローカルフォルダー(作業用リポジトリ)から Altium Designer で編集でき、Commit された変更はその後リモート Git リポジトリに更新されます。ローカルリポジトリとリモートリポジトリは VCS の Push コマンドによってリンクされ、最終的に同期されます。
設計で共同作業を行いたい他のユーザーは、リモート Git リポジトリをローカルの作業用リポジトリに cloning することでプロジェクトにアクセスできます。リモート Git リポジトリからファイルにアクセスする方法は社内システムや運用方法によって異なりますが、リモートリポジトリの内容をローカルの作業用リポジトリに clone する基本的な方法は、以下の画像に示すように Git コマンド git clone [remote repository URL] [target working repository folder] を使用することです。
Commit された変更がリモート Git リポジトリに更新される
このプロセスでは、共有リモートリポジトリがローカルの作業用リポジトリとして複製され、master ブランチの最新(HEAD)リビジョンが自動的にチェックアウトされます。その後、ファイルは Altium Designer で編集、保存、VCS への Commit が可能となり、最終的にリモート Git リポジトリへ push されます。
既存の Git リポジトリに接続する
Altium Designer には、新しい Git リポジトリを作成したり既存のものに接続したりするためのコントロールはありません。ただし、他の手段によってこの種の既存リポジトリに実質的に接続することは可能です(これは Git ユーザーに好まれてきた従来の手法です)。そのためには、次のようにします。
- リモート Git リポジトリを作成するか、Altium Designer プロジェクトが保存されている会社の外部リポジトリにアクセスします。
- リポジトリを clone して、ローカルの作業用 Git リポジトリを作成します。
- ローカルリポジトリから Altium Designer プロジェクトを開きます。
Altium Designer は、そのプロジェクトが Git ベースのリポジトリでバージョン管理されていることを認識し、VCS 関連のステータス、およびファイルを扱うためのコマンド/機能(Commit(ローカル作業用 Git リポジトリへ)や Push(ローカル Git リポジトリからリモート Git リポジトリへ)を含む)を提供します。

