Monotone

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Monotone
Monotone-logo.png
Entwickler Das monotone-Entwicklerteam
Aktuelle Version 1.0
(26. März 2011)
Betriebssystem Unix, Linux, BSD, Mac OS X, Windows
Programmier­sprache C++
Kategorie Versionsverwaltung
Lizenz GPL (Freie Software)
www.monotone.ca

Monotone ist ein freies verteiltes Versionskontrollsystem. Monotone verwaltet Versionen von Dateien unabhängig von Dateiumbenennungen und gruppiert Versionen in Changesets. Die Design-Prinzipien basieren auf verteilter Verwaltung und verwenden kryptografische Primitive als Datei-Versionsstempel (über SHA1-Hashfunktion) und zur Authentifizierung der Nutzeraktionen (über RSA-Signaturen). Unter Microsoft Windows kann es z.B. mit dem Client Guitone verwendet werden.

Monotone diente als Inspiration für Git[1] und findet unter anderem bei Pidgin und i2p Verwendung.[2]

Eigenschaften[Bearbeiten]

Monotone ist ein verteiltes Versionskontrollsystem, das sich in einigen Eigenschaften von traditionellen Versionskontrollsystemen unterscheidet:

  • Verteilter Ansatz zur Versionskontrolle
  • Verwendet SHA-1-Hashes zur Identifikation einzelner Dateien wie auch Gruppen von Dateien anstelle von Versionsnummern.
  • Jeder Monotone-Client kann als Server agieren. Es existiert kein separater Monotone-Server.

Weitere Eigenschaften sind:

  • Unterstützung der Internationalisierung
  • Portables Design, implementiert in C++
  • Monotone kann CVS-Projekte importieren, ähnliche Bedienkommandos wie CVS unterstützen den Umstieg
  • Signieren der Revisionen mittels RSA-Zertifikaten
  • Access Control: Die Zugangskontrolle basiert weniger, wie bei traditionellen zentralisierten Systemen, auf Einschränkungen des Eintrags in das Repository, sondern darauf, dass der Monotone-Endnutzer entscheidet, wann und wie er diese Information in seinem Arbeitsbereich nutzen will. Dieses realisiert er über das in Monotone eingebaute Vertrauenskonzept.[3]
  • Build Integration: Ermöglicht Build- und Testsysteme über Commits zu triggern.
  • Kompaktes Repository: Monotone komprimiert Dateien und Datei-Deltas mittels gzip.
  • CVS-Import: Monotone kann die CVS-Historie importieren.
  • Log Review: Formatierungsrichtlinien für Log-Nachrichten.
  • Repository-Replikation: Replikation bzw. Spiegelung des Repository zur Lastverteilung oder als Backup.
  • Offline: Möglichkeit der Entwickler bis auf Synchronisationsprozesse vollständig offline zu arbeiten.
  • Historienbestand bei Umbenennung: Dateien und Verzeichnisse können umbenannt werden ohne Historien zu verlieren oder künftige Merges zu behindern.

Weblinks[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. Linux-Kernel Archive: Kernel SCM saga
  2. Vorlage:Internetquelle/Wartung/Zugriffsdatum nicht im ISO-FormatVorlage:Internetquelle/Wartung/Datum nicht im ISO-FormatProjectsUsingMonotone. 21. November 2010, abgerufen am 21. November 2010.
  3. TrustFoundations