Versionskontrolle für PCB-Designprojekte: ein Leitfaden

Zachariah Peterson
|  Erstellt: April 5, 2021  |  Aktualisiert am: April 6, 2021
Leitfaden zur Versionskontrolle

Mit Versionskontrolle können Entwicklungsteams genau das tun, was der Name schon sagt: Sie können verschiedene Versionen eines Projekts oder Daten-Repositorys erstellen, verwalten und steuern, welche Version die Haupt-Version darstellt. Dabei werden alle Änderungen zwischen den Versionen verfolgt und mit einem Zeitstempel versehen.

Versionskontrollsysteme eignen sich hervorragend, um eine ganze Codebasis zu verfolgen und zu pflegen. Veraltete Schritte wie das Kopieren, Einfügen, Verkleinern und Versenden per E-Mail, mit denen die meisten Leiterplattendesigner vertraut sind, entfallen dadurch. Außerdem können mithilfe von Version Control Projekte kopiert werden und Sie können einen Revisionsverlauf aus einem Code-Repository erstellen.

Wie können Sie als Hardware-Designer Versionskontrolle für Ihr PCB-Projekt nutzen? Externe Versionskontrollsysteme erfordern einen zusätzlichen Schritt in Ihrem Arbeitsablauf, bei dem Dateien aufgerufen, geändert und Revisionen wieder in die Versionskontrolle übernommen werden müssen. In diesem Leitfaden gehen wir im Detail durch, was Sie brauchen, um ein solides Setup für die Versionskontrolle Ihres Projekts aufzubauen.

Nutzer von Altium Designer können dafür die Synchronisierungsfunktionen in Altium 365 nutzen, um das Versionskontrollsystem in einer verwalteten Cloud-Plattform zu spiegeln. Eine andere Möglichkeit ist, ein externes SVN- oder Git-Repository in das Versionskontrollsystem auf Altium 365 zu migrieren.

Welche Vorteile hat Versionskontrolle für PCB-Projekte?

Nachdem ich mit mehreren Designern über dieses Thema gesprochen habe, habe ich herausgefunden, dass größere Unternehmen über einige interessante Möglichkeiten verfügen, ihre Projekte, PCB-Dokumente, Schaltpläne, Bibliotheken und alle in PCB-Designprojekten benötigten Informationen zu katalogisieren und zu organisieren. Am häufigsten organisieren Unternehmen Konstruktionsdateien nach Projekt oder Dateityp sowie nach Teile-/Projektnummer. Wenn kein Versionskontrollsystem vorhanden ist, speichert ein Team wahrscheinlich eine große Gruppe von Projekten einfach irgendwo in einem Ordner.

Es gibt einige Fälle, in denen es eine gute Idee ist, Ihre Hardware- und PCB-Projekte in ein Versionskontrollsystem zu integrieren:

  • An einem Projekt arbeiten mehrere Mitarbeiter.
  • Projektrevisionen müssen im Zeitverlauf nachvollziehbar sein, ohne dass Projekte wiederholt kopiert werden müssen.
  • Ein Team muss möglicherweise auf eine frühere Version eines Projekts zurückgreifen.
  • Ein Projekt muss schnell geklont werden, um es später wiederverwenden zu können.
  • Bestimmte Dateien in einem Projekt müssen möglicherweise geklont, nachverfolgt oder zurückgesetzt werden.

Versionskontrollsysteme helfen dabei, all diese Aufgaben zu rationalisieren. Ein PCB-Designteam muss also im Vorhinein entscheiden, welches Versionskontrollsystem es verwenden soll. Nutzer von Altium Designer haben die Möglichkeit, das in Altium 365 integrierte Git-Repository zu verwenden.

Interne oder externe Versionskontrolle?

Der Vorteil eines internen Versionskontrollsystems in Altium 365 besteht darin, dass alle Projekte in der Versionskontrolle synchronisiert und direkt in Altium Designer geöffnet werden können. Das manuelle Aufrufen (git check) von Dateien entfällt. Zudem können Projektrevisionen mit wenigen Klicks wieder in Altium 365 synchronisiert werden. Darüber hinaus kann alles in einem PCB-Projekt synchronisiert und in Altium 365 migriert werden.

Es gibt jedoch Situationen, in denen die Beibehaltung eines externen Versionskontrollsystems wichtig ist. PCB-Designprojekte können sehr komplex sein und viel mehr als nur die Leiterplatte betreffen. Dazu gehören mechanische Teile, eine Reihe von Dokumentationen, Code für eingebettete Software/Firmware und andere wesentliche Elemente, die noch nicht als verwaltete Objekte in Altium 365 vorhanden sind. Es gibt auch den Fall, dass ein Unternehmen mit privilegierten Daten für ein Design zu tun hat und keine Daten auf einem Server ablegen darf, den es nicht direkt kontrolliert. In diesen Fällen ist es sinnvoll, nur die relevanten PCB-Projektdaten zu synchronisieren, während andere Daten im externen Repository gespeichert werden können.

Synchronisierung mit der internen Versionskontrolle mit Simple Sync

Wenn Sie Altium Designer schon einmal mit einem Versionskontrollsystem verwendet haben, ist Ihnen vielleicht ein versteckter „.git”-Ordner in Ihren Projektordnern aufgefallen. Dieser Ordner ist der Hinweis von Altium Designer, dass für dieses Projekt ein Versionskontrollsystem aktiv ist. Sobald dieser .git-Ordner in einem Projektordner erkannt wird, wechselt Altium Designer in den „Simple-Sync-Modus“ und bereitet die Synchronisierung mit Altium 365 vor.

Windows-Dateimanager zeigt einen Ordner, indem es einen .git-Unterordner gibt.
Dieser Ordner ist Ihr Hinweis darauf, dass für diesen Dateisatz ein Versionskontrollsystem aktiv ist.

Es gibt einige Optionen für die lokale Synchronisierung mit der Versionskontrolle:

Erstellen Sie den .git-Ordner lokal mit den folgenden Git-Bash-Befehlszeileneinträgen aus Ihrem Projektordner:

  • git init
  • git add *.*
  • git remote add [repo_name] [https://repo_address]

Verwenden Sie TortoiseGit oder ein anderes Tool, um den lokalen .git-Ordner zu erstellen, und den Befehl „Online verfügbar machen” im Projektfenster.

Sobald Sie das Projekt in Altium Designer öffnen, löst das Vorhandensein des .git-Ordners Simple Sync aus. Anschließend können Sie die Standardbefehle „Push” und „Commit” verwenden, um das Projekt in die formale Versionskontrolle von Altium 365 zu übernehmen. Mit externen Versionskontrollwerkzeugen können diese Repositorys lokal in Batches erstellt und bei Bedarf wieder mit einem Altium 365 Workspace synchronisiert werden.

Ausschalten der externen Versionskontrolle und Migration

Wenn ein verwaltetes Projekt in Altium Designer geöffnet wird, werden die Dateien auf dieselbe Weise von der internen oder externen Versionskontrolle überprüft. Dies ist eine großartige Möglichkeit für Unternehmen, die eine großen Datenmenge in einer externen Versionskontrolle besitzen. Denn so kann sichergestellt werden, dass die Altium-Projekte mit dem primären Versionskontrollsystem richtig synchronisiert werden. Wenn Sie jedoch vollständig auf das Versionskontrollsystem in Altium 365 migrieren möchten, gibt es mehrere Möglichkeiten dies zu tun.

Der einfachste Weg, um die Versionskontrolle für das Projekt zu deaktivieren, besteht darin, den .git-Ordner in Ihrem Projektordner zu löschen. Leider wird dadurch auch der gesamte Revisionsverlauf entfernt, sodass dies nicht die sauberste Methode ist, um ein Projekt aus Ihrem externen Versionskontrollsystem zu entfernen.

Die wahrscheinlich beste Option ist die Verwendung des Project Packager:

  1. Ziehen Sie das vorhandene verwaltete Projekt aus der externen Versionskontrolle heraus.
  2. Öffnen Sie das herausgezogene Projekt in Altium Designer.
  3. Verwenden Sie den Project Packager in Altium Designer, um eine Kopie des Projekts zu erstellen.
  4. Synchronisieren Sie dieses neue Projekt mit der internen Versionskontrolle in Altium 365, indem Sie den Befehl „Online verfügbar machen” im Projektfenster auswählen.

Der Project Packager erstellt dann einen Snapshot Ihres Projekts ohne den ganzen Ballast der Versionskontrolle. Außerdem werden alle Links zum Projekt entfernt, wenn es zuvor in Ihrem Arbeitsbereich verfügbar war.

Ansicht aus Altium 365: Linke Seite listet die Dokumente des Projekts, durch Rechtsklick öffnet sich ein Optionenmenü. Die Punkte "Online verfügbar machen" und "Projekt-Packager" sind hervorgehoben.
Zwei wesentliche Befehle zum Entfernen eines Projekts aus der externen Versionskontrolle.

Sie können nun das Projekt aus dem alten Repository löschen oder das Repository ganz aufgeben. Sie können dieses Repository auch für andere Zwecke nutzen, die für Ihr Projekt relevant sein könnten, aber keine Aufgaben in Altium Designer beinhalten.

Wenn Sie etwas abenteuerlustiger sind und alles über verschiedene Versionskontrollsysteme hinweg synchronisieren möchten, müssen Sie ein Skript erstellen, das die Spiegelung durchführt. Ari Mahpour war so großzügig, einige großartige Artikel über die Erstellung eines Git-basierten Arbeitsablaufs für Benutzer von Altium Designer zu schreiben:

Oben wurde zwar alles in Bezug auf Git besprochen, Sie können so aber auch verwaltete SVN-Repositorys mit Versionskontrolle erstellen. Lesen Sie diesen Leitfaden in der Dokumentation, um mehr darüber zu erfahren.

Heutzutage können PCB-Hersteller und -Designer über die Altium 365™-Plattform ihre Projektdaten einfach austauschen und mühelos zusammenarbeiten. PCB-Designteams können dabei die internen Versionskontrollfunktionen für das Designdatenmanagement nutzen. Fast alles lässt sich in die erstklassigen Designwerkzeuge von Altium Designer® integrieren. Mit Altium 365 können Sie Ihre Projektdaten in einer sicheren Umgebung mit anderen Designern, Herstellern und Kunden teilen.

Wir haben nur ganz oberflächlich behandelt, was mit Altium Designer auf Altium 365 möglich ist. Wenn Sie mehr erfahren möchten, können Sie die Produktseite besuchen, wo Sie Zugang zu detaillierterem Beschreibungen der Funktionen und On-Demand Webinaren haben.

Über den Autor / über die Autorin

Über den Autor / über die Autorin

Zachariah Peterson verfügt über einen umfassenden technischen Hintergrund in Wissenschaft und Industrie. Vor seiner Tätigkeit in der Leiterplattenindustrie unterrichtete er an der Portland State University. Er leitete seinen Physik M.S. Forschung zu chemisorptiven Gassensoren und sein Ph.D. Forschung zu Theorie und Stabilität von Zufallslasern. Sein Hintergrund in der wissenschaftlichen Forschung umfasst Themen wie Nanopartikellaser, elektronische und optoelektronische Halbleiterbauelemente, Umweltsysteme und Finanzanalysen. Seine Arbeiten wurden in mehreren Fachzeitschriften und Konferenzberichten veröffentlicht und er hat Hunderte von technischen Blogs zum Thema PCB-Design für eine Reihe von Unternehmen verfasst. Zachariah arbeitet mit anderen Unternehmen der Leiterplattenindustrie zusammen und bietet Design- und Forschungsdienstleistungen an. Er ist Mitglied der IEEE Photonics Society und der American Physical Society.

Ähnliche Resourcen

Verwandte technische Dokumentation

Zur Startseite
Thank you, you are now subscribed to updates.