Wozu Versionsverwaltung dient
Was Git nicht ist
Vier Vorstellungen über Git entstehen früh und sorgen monatelang für Verwirrung. Es geht schneller, sie jetzt zu klären, als sie später wieder abzulegen.
Git ist nicht GitHub
Das sind unterschiedliche Dinge. Dass die Namen ähnlich sind, hilft dabei wirklich nicht.
Git ist ein Programm, das auf deinem Computer läuft und den Verlauf eines Projekts verwaltet. Es funktioniert, bevor du dich mit irgendetwas verbindest, und auch dann noch, wenn dein Netzwerk ausgeschaltet ist.
GitHub ist eine Website, die Kopien von Git-Projekten speichert, damit Menschen sie miteinander teilen können. Das tun auch GitLab, Bitbucket, Codeberg und andere. Sie sind nützlich, beliebt und optional.
Du kannst Git jahrelang allein auf deinem eigenen Rechner nutzen, ohne irgendwo ein Konto anzulegen. Viele Menschen tun das. Wenn jemand sagt „Stell es auf Git“, meint die Person meist „Stell es auf GitHub“. Im alltäglichen Sprachgebrauch werden die beiden Ideen schon so lange vermischt, dass Anfänger verständlicherweise annehmen, es sei dasselbe.
Halte sie gedanklich auseinander. Das erspart dir echte Verwirrung, wenn wir zum Teilen von Arbeit kommen. Dann musst du nämlich wissen, welche Hälfte was erledigt.
Diese Trennung bildet auch die Grenze dieses Kurses. Du übst die Abläufe zum Teilen mit Repositories auf demselben Rechner und ordnest ihnen später die üblichen Begriffe von Hosting-Diensten zu. Du brauchst weder ein Dienstkonto noch eine Netzwerkverbindung. Du sollst zuerst Git lernen, bevor die Einrichtung bei einem bestimmten Anbieter hinzukommt.
Git ist kein Backup
Ein Verlauf liegt in deinem Projektordner. Wenn dein Laptop gestohlen wird, sind deine Commits mit ihm weg.
Das überrascht viele, denn „jede Version von allem behalten“ klingt nach Backup. Es ist keines und versucht auch nicht, eines zu sein. Git schützt dich vor deinen eigenen Änderungen. Es schützt dich nicht vor einem defekten Laufwerk oder einer verlorenen Tasche.
Wenn du dein Projekt zu einem Hosting-Dienst kopierst, bekommst du tatsächlich eine Kopie außerhalb deines Rechners. Das ist ein Grund, warum Menschen es tun. Aber das richtest du bewusst ein. Git stellt es nicht allein dadurch bereit, dass es vorhanden ist.
Sichere deinen Computer weiterhin so, wie du es bisher tust.
Git speichert deine Arbeit nicht automatisch
Git zeichnet auf, was du ihm vorgibst, und zwar dann, wenn du es ihm sagst.
Wenn du eine Datei bearbeitest, ändert sich die Datei. Es entsteht kein Commit. Schließt du den Editor und öffnest ihn eine Woche später wieder, zeigt Git deine Arbeit weiterhin als nicht committet an, genau wie du sie hinterlassen hast. Nichts wurde aufgezeichnet, und nichts ging verloren.
Das führt in beide Richtungen zu Missverständnissen. Manche glauben, sie seien geschützt, obwohl sie es nicht sind. Andere glauben, Git beobachte sie im Stillen, und fühlen sich überwacht. Beides stimmt nicht. Git wartet auf deinen Auftrag.
Git ist nicht nur für Programmierer und nicht nur für Code
Git kann jede gewöhnliche Datei als Bytes speichern. Seine Vergleiche sind für Text am nützlichsten. Deshalb haben Programmierer es übernommen. Aber auch viele andere Arbeiten bestehen aus Text.
Menschen verwalten Bücher, Forschungsnotizen, juristische Dokumente, Konfigurationsdateien und Websites mit Git. Wenn deine Arbeit aus Textdateien besteht und dir wichtig ist, wie sie letzten Monat aussah, ist Git dafür geeignet.
Bei Bildern, Videos und großen Binärdateien ist Git tatsächlich schwächer. Es speichert sie, kann dir aber keinen nützlichen Unterschied zwischen zwei Versionen eines Fotos zeigen. Dadurch entfällt ein großer Teil seines Nutzens. Das ist eine echte Einschränkung, keine kleine Unannehmlichkeit.
Deine Internetverbindung ist ausgefallen. Was kannst du weiterhin tun?
Warum ist es ungenau, Git als Backup-System zu bezeichnen?
Nachdem das geklärt ist, fehlt noch eines, bevor du Git selbst anfasst: wo du es ausführen wirst und warum dieser Kurs dafür zwei Orte nutzt.