Perforce

Software im Bereich Versionsverwaltung

Perforce ist eine Software zur Versionsverwaltung von Dateien und Verzeichnissen.

Perforce
Basisdaten

Entwickler Perforce Software Inc.
Erscheinungsjahr 1995
Aktuelle Version 2024.2[1]
(15. Mai 2024)
Betriebssystem GNU/Linux, Windows, macOS
Programmier­sprache C
Kategorie Versionsverwaltung
Lizenz Proprietär
deutschsprachig ja
perforce.com

Architektur

Bearbeiten

Perforce unterstützt das copy-modify-merge-Konzept. Ein Arbeiten mit dem lock-modify-write-Ansatz ist jedoch auch möglich. Neben der üblichen Verwaltung von Dateien, die lokal in definierten Arbeitsbereichen ("workspaces") geschieht, enthält Perforce noch folgende Objekttypen: Labels (zum Markieren bestimmter Revisionsstände der versionierten Dateien), Branch-Views (Definitionen von Verzweigungszusammenhängen) und Jobs (ähnlich den Tickets eines Bugtracker-Systems).

Perforce ist als Client-Server-Architektur realisiert. Die Serverapplikation verwaltet eine Datenbank mit den Metadaten über die versionierten Dateien, darunter Bearbeitungskommentare, Versionsnummern und die Relationen zwischen den Versionen. Die Dateien selbst werden separat als RCS-Deltas im Dateisystem des Servers abgelegt. Der Server wird für mehrere Betriebssysteme angeboten.

Der Client, der für verschiedene Betriebssysteme verfügbar ist (darunter GNU/Linux, Windows und macOS), kommuniziert mit dem Server über TCP/IP. Zum kommandozeilenbasierten Client (genannt P4) existieren verschiedene GUI-Varianten, die die üblichen Benutzeraufgaben wie Auschecken, Einchecken und Vergleichen von Versionen vereinfachen. Daneben existieren auch Schnittstellen zu Skriptsprachen wie Perl oder Ruby.

Perforce versioniert jede Datei einzeln, verwaltet aber sogenannte Changelists, die für das Repository globale Nummern bekommen. Mit jeder Eincheck-Aktion wird eine Changelist, bestehend aus beliebig vielen Einzelaktionen auf Dateien (beispielsweise Ändern, Hinzufügen, Löschen) committed. Die Versionsgeschichte eines Ordners im Repository zeigt diese globalen Änderungslisten, womit jederzeit die gesamte Ordnerstruktur eines bestimmten Zeitpunkts wiederhergestellt werden kann.

Lizenzierung

Bearbeiten

Seit Januar 2012 ist eine Version des Perforce-Servers für höchstens zwanzig Anwender (mit maximal zwanzig Arbeitskopien) frei erhältlich – zuvor lag die Grenze bei zwei Benutzern. Alternativ dazu ist ein Perforce-Server mit unbegrenzter Nutzerzahl, aber mit insgesamt höchstens 1000 Dateien frei verwendbar. Ebenfalls frei erhältlich ist Perforce für quelloffene Projekte, Schulprojekte und für Testzwecke. Eine kommerzielle Nutzung ist kostenpflichtig. Alle Clients sind frei verfügbar und können auf beliebig vielen Systemen installiert werden.

Verbreitung

Bearbeiten

Über 7000 Organisationen nutzen Perforce.[2]

Bearbeiten

Einzelnachweise

Bearbeiten
  1. Software Release Index | Perforce. Abgerufen am 5. September 2024.
  2. Perforce commands 0.48% market share in Software Configuration Management. Abgerufen am 5. September 2024 (englisch).