開発チームはバージョンコントロールシステムを通じて、その名のとおり、プロジェクトのマスターバージョンとなるプロジェクトやデータリポジトリのバージョンを管理できるようになります。バージョン間の変更はすべてタイムスタンプ付きで追跡されます。バージョンコントロールシステムは、大半のPCB設計者になじみのあるコピー、貼り付け、圧縮、メール送信といった旧式の手順を使用せずにコードベース全体を追跡し、維持管理するのに最適です。プロジェクトのクローンを作成し、コードリポジトリからレビジョン履歴を構築するという問題もあります。
ハードウェア設計者はハードウェアプロジェクトでバージョンコントロールシステムをどのように活用できるでしょうか。外部のバージョンコントロールシステムを使用するとワークフローで実行するステップが増えます。たとえば、ファイルを確認、変更し、レビジョンをバージョンコントロールにコミットし直す必要が生じます。Altium DesignerではAltium365の同期機能を活用できるため、マネージド型クラウドプラットフォームでのバージョンコントロールシステムのミラーリングに役立ちます。また、外部のSVNやGitリポジトリをAltium365のバージョンコントロールシステムに移行できます。
このトピックについて複数の設計者に話を聞いた結果、大規模な企業はプロジェクト、PCB文書、回路図、ライブラリ、PCB設計プロジェクトで必要な他の情報をカタログ化して整理する独自の方法を用意していることがわかりました。中でも設計データの最も一般的な整理方法として、プロジェクト別、またはファイル型やパーツ/プロジェクト番号別を挙げることができます。いずれの場合でも、バージョンコントロールシステムが不在の場合、大きなプロジェクトグループはフォルダーかどこかに保持されます。
ハードウェアプロジェクトやPCBプロジェクトで、バージョンコントロールシステムの使用が効果的なケースがいくつかあります。たとえば、次のようなケースです。
バージョンコントロールシステムは上記すべてのタスクの合理化に役立ち、PCB設計チームが使用するバージョンコントロールシステムを選択することになります。Altium DesignerではAltium 365に組み込まれるGitリポジトリを使用することができます。
Altium365に内蔵されているバージョンコントロールシステムを使用するメリットは、バージョンコントロールのあらゆるプロジェクトを同期し、Altium Designerで直接開くことができる点にあります。手動でファイルをチェックアウトする手間を経ずに、数クリックでプロジェクトレビジョンをAltium 365に同期し直すことができます。さらに、PCB設計コースプロジェクトのあらゆる要素がAltium 365への同期と移行の対象となります。
ただし、外部のバージョンコントロールシステムを維持することが重要となる場合もあります。PCB設計プロジェクトはかなり複雑になることがあり、回路基板だけでなく、メカニズム、各種文書、埋め込みソフトウェア/ファームウェアのコードなど、マネージドオブジェクトとしてAltium 365にまだ導入されていない基本的要素がかかわる可能性があります。また、企業が扱っているデータが設計に関する秘匿特権の対象となる場合、直接管理でないサーバーにデータを格納できないこともあります。このような場合、特権の対象となるPCBプロジェクトデータのみを同期し、他のデータは外部リポジトリに保持した方が合理的です。
バージョンコントロールシステムとAltium Designerを併用したことがある場合、プロジェクトフォルダーに「.git」フォルダーが隠されていることに気づいたかもしれません。Altium Designerはこのフォルダーを手がかりにして、該当プロジェクトでバージョンコントロールシステムが有効であることを認識します。Altium Designerはこの「.git」フォルダーがプロジェクトフォルダーにあることを認識次第、簡易同期モードに入り、Altium 365に同期し直す準備をします。
バージョンコントロールへのローカルでの同期方法は以下のとおりいくつかあります。
.gitフォルダーをローカルで作成するために、プロジェクトフォルダーから次のGit Bashコマンドラインエントリーを使用します。
TortoiseGitまたは別のツールを使用してローカルの.gitフォルダを作成します
プロジェクトパネルの「Make Project Available Online(プロジェクトにオンラインでアクセスできるようにする)」コマンドを使用します
Altium Designerでプロジェクトを開くと、.gitフォルダーがあることにより簡易同期機能がトリガーされます。トリガーされたら、標準的なpushとcommitコマンドを使用して、Altium 365の正式バージョンコントロールにプロジェクトを配置できます。外部のバージョンコントロールツールを使用すると、これらリポジトリはバッチ単位でローカルに作成できるようになり、必要なときにAltium 365 Workspaceに同期し直すことができます。
管理プロジェクトをAltium Designerで開くと、ファイルは内部または外部のバージョンコントロールから同じ形態でチェックアウトされます。これによりAltiumプロジェクトを主要バージョンコントロールシステムと確実に同期させることができるため、外部のバージョンコントロールで大量のデータを扱う企業にとって優れた仕組みです。一方、Altium 365のバージョンコントロールシステムに完全に移行する場合は、いくつかの方法が考えられます。
プロジェクトでバージョンコントロールを無効にするには、プロジェクトフォルダーで.gitフォルダーを削除するのが最も簡単な方法です。残念ながらこの方法ではレビジョン履歴がすべて削除されるため、外部のバージョンコントロールシステムからプロジェクトを最も整然とプルする方法とは言えません。
外部のシステムからプロジェクトをプルしたら、上記オプションを使用してAltium 365内部のバージョンコントロールシステムにプロジェクトをすぐ入力できます。次の手順でプロジェクトパッケージャーを使用するのが、最適な選択肢と言えるでしょう。
プロジェクトパッケージャーによってバージョンコントロールの手間をかけずに、プロジェクトのスナップショットが作成されます。また、以前にワークスペースでアクセス可能とされたプロジェクトへのリンクも削除されます。
これで、古いリポジトリからプロジェクトを削除したり、リポジトリを完全に破棄したりできるようになりました。このリポジトリは、プロジェクトに関連し、かつAltium Designerのタスクを伴わない他の用途のために残しておくこともできます。
最後に、一歩踏み込んで、バージョンコントロールシステム全体であらゆる要素を同期する場合は、ミラーリングを実行するスクリプトを作成する必要があります。この点に関しては、Gitベースのワークフローの作成に関してAri MahpourがAltium Designerユーザー向けに執筆した次の記事が参考になります。
ちなみに、上記記事はGitに焦点を当てて執筆されていますが、バージョンコントロール付きのマネージド型SVNリポジトリを作成することもできます。詳細は、ドキュメンテーションのこちらのガイドをお読みください。
PCBメーカーや設計者は、Altium 365™プラットフォームを使用して、プロジェクトデータを共有し、手軽に共同作業を行えるようになっています。PCB設計チームは設計データの管理に内部バージョンコントロール機能を利用でき、Altium Designer®に搭載される世界クラスの設計ツールはあらゆるものと統合可能です。Altium 365では、他の設計者やメーカー、顧客とプロジェクトデータを安全な環境で共有できます。
ここでは、Altium 365とAltium Designerでできることについて、その一部を紹介したに過ぎません。より詳細な機能の説明については、製品ページまたはオンデマンドのWebセミナーをご覧ください。