Close

Git optimal nutzen

Git verstehen – mit Tutorials, Neuigkeiten und Tipps

Überblick


Git-Grundlagen

Git ist ein kostenloses Open-Source-Versionskontrollsystem, das 2005 von Linus Torvalds entwickelt wurde. Im Gegensatz zu älteren Versionskontrollsystemen wie SVN und CVS ist Git ein verteiltes System: Jeder Entwickler verfügt lokal über den gesamten Verlauf des Code-Repositorys. Dies verlangsamt den ursprünglichen Klon des Repositorys, beschleunigt jedoch nachfolgende Git-Befehle wie commit, blame, diff, merge und log erheblich.

Git bietet auch umfassende Unterstützung für das Branching, Merging und Umarbeiten des Repository-Verlaufs. Daraus sind viele innovative, leistungsstarke Workflows und Tools entstanden. Pull Requests sind eines dieser beliebten Tools. Teams können damit an Git-Branches zusammenarbeiten und Code effizient gegenseitig reviewen. Git ist derzeit das am weitesten verbreitete Versionskontrollsystem weltweit und gilt als moderner Standard für die Softwareentwicklung.

Funktionsweise von Git

Hier ein grundlegender Überblick über die Funktionsweise von Git:

  1. Du erstellst ein "Repository" (Projekt) mit einem Git-Hosting-Tool (z. B. Bitbucket).
  2. Du kopierst (oder klonst) das Repository auf dein lokales System.
  3. Du fügst eine Datei deinem lokalen Repository hinzu und führst einen "Commit" für die Änderungen durch (d. h., du speicherst sie).
  4. Du verschiebst deine Änderungen per "Push" in deinen Main-Branch.
  5. Du nimmst mit einem Git-Hosting-Tool eine Änderung an der Datei vor und führst einen Commit dafür durch.
  6. Du führst einen "Pull" durch, um die Änderungen auf dein lokales System zu übernehmen.
  7. Du erstellst einen "Branch" (eine Version), nimmst eine Änderung vor und führst einen Commit dafür durch.
  8. Du öffnest einen "Pull-Request" (Änderungsvorschläge für den Main-Branch).
  9. Du führst einen "Merge" deiner Änderungen in den Main-Branch durch.

Die besten Artikel


Git oder SVN? Die Entscheidungsfindung bei Nuance Healthcare

Ein Gastbeitrag von Matt Shelton von Nuance Healthcare. Es ist der erste Beitrag einer Serie über den Wechsel seines Teams von Subversion zu Git, die Gründe dafür und …

Der Umgang mit Maven-Abhängigkeiten bei der Umstellung auf Git

Wir wechseln also zu Git und Git-Flow gefällt uns. Und jetzt? Wollen wir alles ausprobieren! Mein Team ist großartig. Es hat eine Hitliste von Entwickler-Workflows in Confluence zusammengestellt …

Schon gewusst?


Branch

Definition: Branches sind unabhängige Entwicklungslinien. Sie dienen als Abstrahierung des Prozesses "Bearbeitung/Staging/Commit", den wir im ersten Modul dieser Serie beschrieben haben (Git Basics). Du kannst dir Branches als eine Möglichkeit vorstellen, ein vollständig neues Arbeitsverzeichnis inklusive neuer Staging-Umgebung und neuem Projektverlauf einzurichten. Neue Commits werden im Verlauf des aktuellen Branches aufgezeichnet. Das wird im Projektverlauf durch eine Fork abgebildet.