Git oder SVN? Aber was ist eigentlich ein Versionskontrollsystem?

| | Allgemein, Programmierung

Als Informatiker beziehungsweise als Anwendungsentwickler sollte man die Begriffe Git und SVN beide kennen. Aber warum sollte man überhaupt eine Versionskontrolle benutzten? Und was ist eine Versionskontrolle überhaupt?

Genau um dieses Theme geht es jetzt.

VersionskontrollelokeVCS

Versionskontrollsysteme (VCS) protokollieren sämtliche Änderungen die an einer oder mehreren Dateien, sowie Ordnerstrukturen  über eine länger Zeit hinweg geändert wurden. Das heißt das der Zustand der Dateien bzw. Ordner Rückverfolgbar und Wiederherstellbar ist.

Wenn man zum Beispiel in die „falsche Richtung“ Programmiert hat oder Mist gebaut hat kann man einfach und schnell auf eine ältere Version zurück springen.

Viele Leute Versionieren ihre Werke einfach mit mehreren Ordnern, es wird also für jede Version ein neue Ordner angelegt. Allerdings haben Programmierer dieses Verfahren erleichtert und sicherer gemacht indem sie ein VCS entwickelt haben, welches alle relevanten Änderungen in einer Datenbank speichert.

Zentralisierte VersionskontrollezentraleCVS

Nun stellt sich natürlich die Frage, was ist wenn man im Team arbeitet und bis jetzt die Lösung der Ordner Struktur zum Beispiel per FTP abbildet?

Auch dieses Problem haben Programmierer schon vor längerer Zeit erkannt und behoben. Die Lösung ist eine Zentralisierte Versionskontrolle (CVCS), ein Beispiele wäre zum Beispiel Subversion. Dabei werden die Dateien auf einem Zentrallen Server gespeichert und müssen zum Bearbeiten erst per „checkout“ vom Server geholt werden und nach der Bearbeitung „commited“ werden.
Durch diese Lösung ist der Wissenstand darüber wer etwas an einem Projekt macht mehr oder weniger gegeben. Es wird genauestens protokolliert wer welche Änderungen an einer Dateien durchgeführt hat. Auch kann aber fest gelegt werden wer Dateien ändern darf und welche.

Probleme ergeben sich bei dem Verfahren besonders wenn keine Internetverbindung zum Zentralen Server verfügbar ist oder der Server aus anderen Gründen nicht erreichbar ist.

Verteilte VersionskontrolleverteileVCS

Nun kommen wir zum wirklich interessanten Teil der Versionskontroll Entwicklung, es kommt die verteilte Versionskontrolle (DVCS) ins Spiel. DVCS sind zum Beispiel Git oder Mercurial. Mit DVCS erhält der Anwender nicht nur einen bzw. den letzten Snapshot, sondern eine vollständige Kopie des Repository.
Dadurch ist es auch möglich zu arbeiten wenn der Server ausfällt oder keine Verbindung möglich ist. Auch kann so das Repository wieder hergestellt werden wenn es einen Totalausfall mit Datenverlusten gab.
Weiterhin ist es möglich mit verschiedenen externen Repositories zu arbeiten und somit simultan mit anderen zusammenarbeiten zu könne.
Somit ist es auch möglich zum Beispiel Hierarchien zu bilden was mit CVCS nicht möglich ist.

Neueste Beiträge

Your MSPA Goes Smart – Step-by-Step to a DIY Smart Home Hot Tub (Wi-Fi Upgrade)

Introduction

In this article, I’ll show you how I successfully reverse-engineered the serial communication protocol of an MSPA Muse Carlton hot tub. The goal was to read remote control commands and send custom ones. I used an ESP32 Dev Board[*] for this. This protocol likely works with other MSPA models as well.

This article is for makers, home automation enthusiasts, and tech fans who enjoy diving deep into technical systems.


Weiter >>

Dein MSPA wird smart – Schritt-für-Schritt zum DIY Smart Home Whirlpool (WIFI/WLAN Upgrade) / Reverse Engineering eines proprietären UART-Protokolls am Beispiel eines Whirlpool-Steuergeräts (MSPA Muse Carlton)

Einleitung

In diesem Artikel zeige ich dir, wie ich das serielle Kommunikationsprotokoll eines MSPA Muse Carlton Whirlpools erfolgreich reverse-engineered habe. Ziel war es, die Fernbedienungsbefehle auszulesen und eigene Kommandos zu senden. Dafür kam ein ESP32 Dev Board[*] zum Einsatz. Dieses Protokoll funktioniert vermutlich auch bei anderen MSPA-Modellen.

Dieser Artikel richtet sich an alle Maker, Home-Automatisierer und Technik-Fans, die gern tief in die Technik eintauchen.


Weiter >>

Der perfekte Einstieg in die Welt der Vinyls: Der Denon DP-300F und 2 Alternativen

Warum Vinyl?

Vinyl erlebt seit einigen Jahren ein riesiges Comeback. Der warme, analoge Klang, das bewusste Musikhören und das Sammeln von Schallplatten faszinieren immer mehr Musikliebhaber. Dabei ist nicht nur das nostalgische Feeling ausschlaggebend, sondern vor allem auch der unverwechselbare Klangcharakter von Vinyl – ein Klang, der trotz moderner digitaler Verfahren nach wie vor viele Fans begeistert.

Denon DP-300F[*] – Der ideale Allrounder für Einsteiger

Der Denon DP-300F[*] ist nach wie vor ein beliebter vollautomatischer Plattenspieler im Einsteigerbereich. Sein automatischer Tonarm sorgt für einen schonenden Umgang mit Nadel und Platte – perfekt, wenn du ohne großen Aufwand direkt in den Vinylgenuss starten möchtest.


Weiter >>

Ein Leitfaden für Senioren: Günstige Smartphones bis 100 Euro – Unsere 4 Favoriten & Erfahrungsbericht einer maßgeschneiderten Senioren-Lösung – UPDATE 2024/25

In diesem Beitrag stellen wir dir vier günstige Smartphones vor, die aktuell (Stand Dezember 2024) für unter 100 Euro erhältlich sind. Zusätzlich teilen wir eine ganz besondere Geschichte aus dem Familienkreis: Wie wir eines dieser Geräte für die Oma meiner Verlobten eingerichtet haben, damit sie trotz ihrer Parkinson-Erkrankung gut damit zurechtkommt.


Weiter >>