Getting Git Right

Getting Git right, with tutorials, news and tips.

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 Versionskonstrollsystem 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 Master-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 Master-Branch).
  9. Du führst einen "Merge" deiner Änderungen in den Master-Branch durch.
Einstieg in Git

Die besten Blogposts

Sarah Goff-Dupont
Sarah Goff-Dupont

Fünf Tipps für CI-freundliche Repositorys

Artikel lesen
Matt Shelton
Matt Shelton

Git oder SVN? Die Entscheidungsfindung bei Nuance Healthcare

Artikel lesen
Matt Shelton
Matt Shelton

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

Artikel lesen
Alle Artikel anzeigen

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 Branch aufgezeichnet. Das wird im Projektverlauf durch eine Fork abgebildet.

Alle Referenzen anzeigen