Git/Script/01_Intro.md

2.3 KiB

Einstieg

Was ist Versionskontrolle?

Versionskontrolle ist ein System, das es uns ermöglicht, Änderungen an Dateien im Laufe der Zeit nachzuvollziehen. Sie hilft uns, den gesamten Verlauf eines Projekts zu sehen, Änderungen rückgängig zu machen und gleichzeitig mit anderen an denselben Dateien zu arbeiten, ohne Konflikte zu verursachen. So bleibt der Überblick über alle Änderungen gewahrt, und es ist einfacher, Fehler zu finden und zu beheben.

Anwendungszwecke

Wir nutzen Versionskontrolle aus verschiedenen Gründen:

  • Zusammenarbeit an Codeprojekten: Mehrere Entwickler können gleichzeitig an einem Projekt arbeiten, ohne sich gegenseitig zu blockieren. Jeder Entwickler arbeitet an seiner eigenen Kopie, und Änderungen können später zusammengeführt werden.
  • Nachverfolgen von Änderungen: Jede Änderung wird protokolliert, sodass wir jederzeit wissen, wer was wann geändert hat. Dies erleichtert das Debuggen und das Zurückverfolgen von Fehlern.
  • Branching: Git ermöglicht es, verschiedene Arbeitszweige (Branches) zu erstellen, um neue Features zu entwickeln oder Fehler zu beheben, ohne den Hauptcode zu beeinflussen. So können verschiedene Entwickler parallel an unterschiedlichen Aspekten eines Projekts arbeiten.

Warum Git?

Git bietet einige entscheidende Vorteile gegenüber anderen Versionskontrollsystemen:

  • Frei und Open-Source: Git ist kostenlos und open-source, was bedeutet, dass es von jedem verwendet und an die eigenen Bedürfnisse angepasst werden kann. Es gibt keine Lizenzgebühren und eine große Community, die das Tool kontinuierlich weiterentwickelt.
  • Dezentrale Architektur: Git ist ein verteiltes Versionskontrollsystem. Jeder Entwickler hat eine vollständige Kopie des gesamten Repositories, was bedeutet, dass er jederzeit offline arbeiten und Änderungen lokal speichern kann.
  • Der Standard in der Softwareentwicklung: Git ist der Industriestandard und wird von allen großen Code-Hosting-Diensten wie GitHub, GitLab und Bitbucket unterstützt.
  • Leistung und Flexibilität: Git ist extrem schnell und ermöglicht es, große Codebasen effizient zu verwalten. Es bietet zudem eine hohe Flexibilität für fortgeschrittene Arbeitsabläufe, wie das Rebasen, Cherry-Picking oder die Verwaltung von großen Branching-Strategien.