Using External Git Version Control with Altium Designer

現在、バージョン 23. をご覧頂いています。最新情報については、バージョン Using External Git Version Control with Altium Designer の 25 をご覧ください。

GitタイプのリポジトリはAltium Designerの外部で作成され、ローカルのGitリポジトリの内容には、そのホストフォルダからファイルを開いてアクセスします。リモートおよびローカルの作業Gitリポジトリの管理は、通常、企業システムと外部のGitツールを通じて行われますが、ファイルレベルの操作(コミット、プッシュ、更新など)はAltium Designerの編集環境内で処理されます。

  • 設計プロジェクトでGitバージョン管理を使用する前に、VCSプロバイダー - Git エクステンションがAltium Designerにインストールされていることを確認してください。これらはデフォルトでインストールされていますが、ソフトウェアのエクステンションとアップデートビューでアクセスできます。
  • GitリポジトリはAltium Designerの外部で扱われることに注意してください。
  • Git VCSにはさまざまなデータ転送プロトコルが提供されていますが、Altium Designerは現在、ローカルGitリポジトリとそのリモートマスターリポジトリ間の接続にHTTP/HTTPSプロトコルのみをサポートしています。プロトコルについてもっと学びましょう。
  • 外部Git VCSの下にあるプロジェクトに変更をプッシュし、その設計が存在するリポジトリが接続のためにSSHプロトコルを使用している場合、そのリポジトリをサポートされているHTTPS接続プロトコルを使用するように更新しようとする選択肢が提供されます(リポジトリ自体がこのプロトコルをサポートしている場合)。
  • Altium DesignerからGitHubでホストされているプロジェクトを扱う際には、個人アクセストークンを使用する必要があります。そうしないと、プロジェクトをリポジトリにプッシュする際に認証エラーが表示されます。個人アクセストークンの作成についてもっと学びましょう。

Gitバージョン管理システムに追加

分散バージョン管理システムとして、GitはSVNのワークフローとは異なる方法を使用しますが、Altium Designerで確立されたプロジェクトファイルを扱う場合の違いは最小限です。簡単に言うと、Gitは単一のリポジトリターゲットの依存性に焦点を当てるのではなく、複数のリポジトリ間のデータ転送を適用します。

► 詳細情報および適用される原則の概要については、Gitのウェブサイトバージョン管理の基本をご覧ください。

Git VCSシステムは通常、複数のGitリポジトリを必要に応じてホストできる中央集中型のリモートGitサーバーに基づいています。Gitの高速で軽量な特性は、各プロジェクトごとにリモートリポジトリを作成し、そのプロジェクトに取り組んでいる任意のユーザーが作業用リポジトリとして複製(コピー)できる実践に適しています。ユーザーの作業用Gitリポジトリの更新ファイルは、同期を達成するためにGitサーバー上のリモートリポジトリに「プッシュ」されます。

リモートリポジトリは、共有ネットワークリソースなどの便利な場所にある共有型(ベア)Gitリポジトリでもあり得ます。共有リモートGitリポジトリをGitコマンドラインツールで作成するには、git init --bareコマンドを使用します。

Altium DesignerプロジェクトをGitシステムに設定する方法は、会社のインフラと実践に依存し、Altium Designerの外部にあるツールやプロセスを含むことになります。しかし、プロジェクトがバージョン管理システムに入り、ローカル作業リポジトリとして利用可能になると、Altium DesignerでのGit VCSの使用は、SVN VCSの使用とほぼ同じになります。

プロジェクトをGitに追加する

例として、既存のAltium DesignerプロジェクトをローカルのGitリポジトリに追加することができます。これは、基本的なGitコマンドラインツールを使用して行います。このアプローチでは、プロジェクトフォルダがローカル(作業中の)Gitリポジトリになり、これが利用可能なリモートGitリポジトリにリンクされ、最終的に更新されます。

ここで、ツールは以下の用途に使用されます:

  1. プロジェクトフォルダ内で作業用Gitリポジトリを初期化します。
  2. プロジェクトファイルをGitバージョン管理に追加します。*.* ファイル指定はファイルを追加しますが、フォルダは追加しません。
  3. ウェブサーバー上の共有リモートGitリポジトリへのリンク参照を指定します。PCrepoはリモートリポジトリURLのローカルエイリアスとして指名されます。

ローカルGitリポジトリにプロジェクトが追加されています

以下のコミットおよびプッシュプロセスはコマンドラインツールを使用しても実行できますが、この例では以下に概説されているようにAltium Designerでステップが完了しています。

プロジェクトがAltium Designerで開かれると、プロジェクトパネルとストレージマネージャパネルのファイルの状態は「追加予定」()と表示されます。その後、作業リポジトリにコミットすると、ファイルは「サーバー先行」状態()に変わります。これは、リモートのGitリポジトリでまだバージョン管理されていないためです。

  サーバーより先行して追加予定としてスケジュールされたファイル

Push コマンドは、ローカルリポジトリのファイルをリモートのGitサーバーに更新します。これには、対象リポジトリに対して有効な認証情報の提供が一度だけ必要になる場合があります。Altium Designerでは、コミットPushの操作を一つのアクションで呼び出すことができます()、しかし説明の目的でここでは個別のステップで完了しています。

有効な認証情報の要求に応じてファイルが更新されます

Altium Designer プロジェクトは、現在 Git バージョン管理の完全な下にあり、リモート Git リポジトリから他のユーザーが利用できるようになります。例えば、別のユーザーがリポジトリを複製してローカルマシンにダウンロードし、最終的に編集したファイルをリモートリポジトリにプッシュすることで、協力的なワークフローを実現できます。

上記のプロセスは、プロジェクトがリモートGitサーバーに追加される方法の手動例に過ぎないことに注意してください。確立されたGit VCSインストールには、管理者の管理下にある、プロジェクトの設立と取得を簡単にするGUIツールや自動化システムが存在する可能性があります。

Altium Workspaceは、透明なVCSインタラクションをサポートする自動化機能を使用するGitリポジトリを使用した高度なサーバーベースシステムの例です。

Gitリポジトリを複製する

Gitバージョン管理に追加されたローカルプロジェクトは、プロジェクトのローカルフォルダ(作業リポジトリ)からAltium Designerによって編集でき、コミットされた変更はリモートのGitリポジトリに更新されます。ローカルリポジトリとリモートリポジトリは、VCSのPushコマンドによってリンクされ、最終的に同期されます。

設計に協力したい他のユーザーは、リモートのGitリポジトリをローカルの作業リポジトリに複製することでプロジェクトにアクセスできます。リモートのGitリポジトリからファイルにアクセスする方法は、会社のシステムや方法によって異なりますが、リモートリポジトリの内容をローカルの作業リポジトリに複製する基本的な方法は、以下の画像に示されているようにGitコマンドgit clone [リモートリポジトリのURL] [ターゲットの作業リポジトリフォルダ]を使用することです。

リモートGitリポジトリに更新された変更

このプロセスは、共有されたリモートリポジトリをローカルの作業リポジトリとして複製し、自動的に最新(HEAD)リビジョンをマスターブランチからチェックアウトします。その後、ファイルを編集、保存し、Altium DesignerのVCSにコミットし、最終的にリモートGitリポジトリにプッシュすることができます。

既存のGitリポジトリへの接続

Altium Designerは、新しいGitリポジトリを作成したり、既存のリポジトリに接続するためのコントロールを提供していません。しかし、他の方法(Gitユーザーによって好まれる伝統的な技術)を用いることで、このタイプの既存のリポジトリに効果的に接続することができます。そのためには:

  1. リモートGitリポジトリを作成するか、または会社の外部リポジトリにアクセスします - その中にAltium Designerプロジェクトが保存されています。
  2. リポジトリを複製して、ローカルの作業用Gitリポジトリを作成します。
  3. ローカルリポジトリからAltium Designerプロジェクトを開きます。

Altium Designerは、プロジェクトがGitベースのリポジトリでバージョン管理されていることを認識し、VCS関連のステータスや、ファイルを操作するためのコマンド/機能(ローカル作業用Gitリポジトリへのコミットや、ローカルGitリポジトリからリモートGitリポジトリへのプッシュを含む)を提供します。

If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
注記

利用できる機能は、Altium 製品のアクセスレベルによって異なります。Altium Designer ソフトウェア サブスクリプション の様々なレベルに含まれる機能と、Altium 365 プラットフォーム で提供されるアプリケーションを通じて提供される機能を比較してください。

ソフトウェアの機能が見つからない場合は、Altium の営業担当者に連絡して 詳細を確認してください。

Content