Nachtrag (2019): Ich empfehle mittlerweile die git-Anleitung von Roger Dudler.
In diesem Beitrag geht es um die Benutzung von Git unter Windows. Git ist ein Programm zur Versionsverwaltung. Wenn man ein Projekt hat, das aus mehreren Dateien besteht, kann man einen Projektstatus jederzeit sichern und bei Bedarf mit anderen teilen. Auch ist es möglich, Änderungen zwischen Versionen anzuzeigen oder auch rückgängig zu machen: Man hat sozusagen ein Backup der alten Versionen und kann jederzeit mit ihnen Vergleichen. Wenn mehrere Beteiligte gleichzeitig auf ihren Rechnern an einer Datei arbeiten, hilft Git auch, die verschiedenen Änderungen zusammen zu führen.
In diesem Tutorial wird davon ausgegangen, dass der Benutzer auf ein existierendes Projekt („Repository“) zugreifen will, das auf einem Git-Server gehostet wird. Gratis Hosting für Git-Projekte bieten unter anderem BitBucket oder GitHub. Da ich den Text für Gelegenheitsznutzer und Windows verfasse, benutze ich nach Möglichkeit nur die grafische Oberfläche. (Wenn man bestimmte Aufgaben oft zu erledigen hat, halte ich Kommandozeilenwerkzeuge eigentlich für benutzerfreundlicher als grafische Oberflächen. Grafische Oberflächen sind bei selterner Benutzung aber eine prima Gedankenstütze.)
Da Git meist nicht vorinstlliert ist, muss man es vor benutzung installieren. Windows-Nutzern sei hierfür das offizielle Git-für-Windows-Setup empfohlen. Die Voreinstellungen des Setup-Proramms sind gut gewählt, weiche nur davon ab, wenn du weißt, was du tust. (Wenn du dieses Tutorial brauchst, ist das wahrscheinlich nicht der Fall.)
Nach der Installation könnteGit direkt verwendet werden. Zuerst gehen wir jetzt aber einmalig in die Kommandozeile. Uploads werden von Git mit einem Namen und eine E-Mail-Adresse markiert, um die Herkunft der Änderungen zu zeigen. Die folgenden beiden Befehle (mit passender E-Mail-Adresse und Benutzernamen) in die Kommandozeile („Eingabeaufforderung“) einfügen und fertig.
git config –global user.email user@server.invalid
git config –global user.name „Vorname Nachname“
(An dieser Stelle ging es über die Kommandozeile dann doch schneller. Das Argument Gedankenstütze zählt bei einmaliger Benutzung ja nicht.) Im Startmenü (oder auf dem Startbildschirm) sollte „Git GUI“ auftauchen. Frisch gestartet sieht sie unbenutzt noch so aus:
Wenn später eigene Änderungen hochgeladen werden sollen, muss der eigene SSH-Key beim Git-Server hochgeladen werden. Bei GitHub findet man eine Eingabemaske unter https://github.com/settings/keys. Den eigenen Key findet man unter „Show SSH Key“ im Menü „Help“ der Git GUI. (Wer vorher noch kein SSH genutzt hat, muss per „Generate Key“ einen erstellen.) Angezeigt wird der persönliche, öffentliche Schlüssel für den aktuell genutzen Computer. Er ist nicht geheim sondern dient dem Identitätsbeweis. Daher könnt ihr meinen auch gern sehen:
Jetzt wird es ernst: Über „Clone Existing Repository“ (in der Hauptansicht der Git GUI) kann ein bestehendes Projekt auf den eigenen Computer kopiert werden. Wenn man einen SSH-Key hinterlegt hat, empfiehlt es sich, hier auch eine SSH-Adresse anzugeben. (Das ist im nächsten Screenshot der Fall.) Um nur immer einen aktuellen Stand zu laden ohne eigene Änderungen zu teilen, kann man stattdessen einen HTTP-Link nehmen. Achtung: Das Zielverzeichnis darf noch nicht existieren. (Am bequemsten ist es vermutlich, wenn man sich per „Browse“-Funktion zum richtien Ort manöviert und dann den Namen des Zielverzeichnisses eintippt.)
SSH-Fingerabdruck dürfte beim ersten Mal unbekannt sein. Gewissenhafte Nutzer überprüfen ihn (GitHub SSH Keys). Akzeptiert wird der Key durch Eintippen von „yes“ in das Textfeld.
Nach dem Clone öffnet sich das Projekt-Fenster der Git GUI. Außerdem befinden sich die Dateien des Projekts auf der Festplatte. Dort kann man mit ihnen arbeiten und sie Verändern. Git wird jetzt erst einmal nicht mehr gebraucht. Man arbeitet einfach mit den lokalen Dateien, bearbeitet sie zum Beispiel mit einem Texteditor. Nur das verzeichnis „.git“ (normalerweise versteckt) sollte man tunlichst nicht anfassen: Hierin legt Git seine Statusinforationen ab.
Irgendwann ist das Tagwerk getan — oder man will einfach einen aktuellen Stand sichern oder teilen. Wenn das der Fall ist, kann man das über die Git GUI tun. Die Hauptansicht sollte jetzt eine Übersicht an zuletzt geöffneten Projekten abieten:
Per Klick auf eines der zuletzt geöffneten Projekte („Repositories“) gelangt man leicht wieder in die Projektansicht. Diese listet nun die gemachten Änderungen auf.
Man kann sie nun begutachten und als Projektstand speichern. Hierzu klickt man auf Dateien mit „Unstaged Changes“, sie tauchen daraufhin bei den „Staged Changes“ auf. Um die Übersicht zu behalten, sollte man jetzt noch kurz die Änderungen in der „Commit Message“ zusammenfassen. Aschließend wird der Stand per Klick auf auf den „Commit“-Button (unten neben der gerade geschriebenen Zusammenfassung) gespeichert. Man kann nun jederzeit wieder auf diesen Stand zurückkehren. Wer den Weg über SSH gegangen ist, kann seine Änderungen per Klick auf „Push“ auch auf den Server hochladen.
Wenn auf dem Server Änderungen von anderen Benutzern vorhanden sind, wird das „Push“ nicht gelingen: Die fremden Änderungen müssen zunächst abgeholt und mit den eigenen zusammengeführt werden. Wie das geht, erkläre ich jetzt aber nicht mehr.