Einleitung
Ein Git-Repository zu klonen, gehört zu den grundlegenden Fähigkeiten in der Softwareentwicklung. Für den Zugriff auf private Repositories ist häufig eine Authentifizierung erforderlich. In diesem Lab lernen Sie, wie Sie ein Git-Repository mit Benutzername und Passwort klonen. Sie erfahren, welche Syntax Sie dafür verwenden und was Sie beachten müssen, um sicher auf entfernte Repositories zuzugreifen.
Git und das Klonen von Repositories verstehen
In diesem Abschnitt lernen Sie zunächst Git und das Klonen kennen. Anschließend arbeiten Sie mit einem Repository, für das eine Authentifizierung erforderlich ist.
Was ist Git?
Git ist ein verteiltes Versionskontrollsystem, mit dem Sie Änderungen am Quellcode während der Softwareentwicklung nachverfolgen können. So können mehrere Entwickler am selben Projekt arbeiten, ohne die Änderungen der anderen zu überschreiben.
Zu den wichtigsten Konzepten in Git gehören:
- Repository: Speicherort, an dem Ihr Projekt und seine Versionshistorie abgelegt sind
- Commit: Momentaufnahme Ihres Projekts zu einem bestimmten Zeitpunkt
- Branch: Eigenständige Version des Repositorys, die unabhängig weiterentwickelt werden kann
- Remote: Auf einem Server gehostete Version Ihres Repositorys, zum Beispiel auf GitHub, GitLab oder Bitbucket
Was bedeutet es, ein Git-Repository zu klonen?
Beim Klonen eines Git-Repositorys erstellen Sie eine lokale Kopie eines entfernten Repositorys auf Ihrem Rechner. Dabei laden Sie alle Dateien, Branches und die Commit-Historie herunter. So können Sie lokal am Projekt arbeiten und Ihre Änderungen später an das entfernte Repository übertragen.
Git-Installation überprüfen
Prüfen Sie zunächst, ob Git auf Ihrem System installiert ist. Öffnen Sie ein Terminal und führen Sie diesen Befehl aus:
git --version
Die Ausgabe sollte in etwa so aussehen:
git version 2.34.1
Damit ist bestätigt, dass Git installiert und einsatzbereit ist. Im nächsten Abschnitt sehen Sie sich die Syntax zum Klonen von Repositories mit Authentifizierung an.
Authentifizierungsmethoden für Git-Clone
In diesem Abschnitt lernen Sie gängige Methoden kennen, mit denen Sie sich bei einem entfernten Git-Repository authentifizieren. Der Schwerpunkt liegt auf der Authentifizierung mit Benutzername und Passwort.
Gängige Authentifizierungsmethoden
Git unterstützt verschiedene Authentifizierungsmethoden:
- HTTPS mit Benutzername und Passwort: Verwendung der Zugangsdaten Ihres Git-Hosting-Kontos
- SSH-Schlüssel: Verwendung eines öffentlichen und eines privaten Schlüssels
- Personal Access Tokens: Verwendung generierter Tokens anstelle von Passwörtern
- OAuth: Autorisierung über Drittanbieterdienste
Syntax für die HTTPS-Authentifizierung
In diesem Lab verwenden Sie HTTPS mit Benutzername und Passwort. Die grundlegende Syntax zum Klonen eines Repositorys mit Angabe des Benutzernamens lautet:
git clone https://username@repository-url.git
Anschließend fordert Sie das System zur Eingabe Ihres Passworts auf. Alternativ können Sie Benutzername und Passwort gemeinsam in der URL angeben:
git clone https://username:password@repository-url.git
Diese Methode ist jedoch weniger sicher, da Ihr Passwort im Befehl sichtbar ist und möglicherweise in der Shell-Historie gespeichert wird.
Sicherheitshinweise
Beachten Sie bei der Authentifizierung mit einem Passwort die folgenden Sicherheitshinweise:
- Geben Sie Ihre Zugangsdaten niemals an andere weiter.
- Achten Sie darauf, Ihr Passwort nicht an öffentlichen Orten einzugeben.
- Viele Git-Hosting-Dienste wie GitHub und GitLab empfehlen inzwischen Personal Access Tokens anstelle von Passwörtern.
- Verwenden Sie einen Anmeldedatenspeicher, damit Sie Ihr Passwort nicht wiederholt eingeben müssen.
Nachdem Sie nun die Authentifizierungsmethoden kennen, bereiten Sie im nächsten Abschnitt das Klonen eines Repositorys vor.
Ein Git-Repository mit Benutzername und Passwort klonen
In diesem Abschnitt klonen Sie in einer praktischen Übung ein Git-Repository mit Benutzername und Passwort.
Arbeitsverzeichnis vorbereiten
Wechseln Sie zunächst in das Projektverzeichnis, in dem Sie das Repository klonen möchten:
cd ~/project
Repository klonen
In dieser Übung klonen Sie ein Test-Repository mit dem Benutzernamen labex_user und dem Passwort labex_password. Die URL des Repositorys lautet http://localhost:8000/git-server/test-repo.git. Dieser lokale HTTP-Server ist von der übrigen Lab-Umgebung isoliert, sodass Sie die Eingabe des Passworts üben können. Verwenden Sie für echte entfernte Repositories HTTPS.
Führen Sie den folgenden Befehl aus, um das Repository zu klonen:
git clone http://labex_user@localhost:8000/git-server/test-repo.git
Geben Sie bei der Passwortabfrage labex_password ein.
Falls der obige Befehl nicht funktioniert, können Sie alternativ Benutzername und Passwort gemeinsam angeben. In der Praxis ist diese Variante allerdings weniger sicher:
git clone http://labex_user:labex_password@localhost:8000/git-server/test-repo.git
Erwartete Ausgabe
Nach dem Klon-Befehl sollte eine ähnliche Ausgabe erscheinen:
Cloning into 'test-repo'...
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (3/3), done.
Klon überprüfen
Prüfen Sie, ob das Repository erfolgreich geklont wurde, indem Sie den Inhalt des neu erstellten Verzeichnisses anzeigen:
ls -la test-repo
Die Ausgabe sollte den Inhalt des Repositorys anzeigen, darunter die Datei README.md und das Verzeichnis .git:
total 16
drwxr-xr-x 3 labex labex 4096 Jul 15 12:34 .
drwxr-xr-x 10 labex labex 4096 Jul 15 12:34 ..
drwxr-xr-x 8 labex labex 4096 Jul 15 12:34 .git
-rw-r--r-- 1 labex labex 16 Jul 15 12:34 README.md
Das Repository wurde erfolgreich geklont. Nun können Sie den Inhalt untersuchen und mit dem Repository arbeiten.
Geklontes Repository erkunden und bearbeiten
In diesem Abschnitt erkunden Sie das geklonte Repository und nehmen eine kleine Änderung an der Datei README vor.
In das Repository-Verzeichnis wechseln
Wechseln Sie zunächst in das geklonte Repository:
cd ~/project/test-repo
Inhalt des Repositorys anzeigen
Mit dem Befehl ls können Sie den Inhalt des Repositorys anzeigen:
ls -la
Die Ausgabe sollte die Datei README.md und das Verzeichnis .git enthalten:
total 16
drwxr-xr-x 3 labex labex 4096 Jul 15 12:34 .
drwxr-xr-x 10 labex labex 4096 Jul 15 12:34 ..
drwxr-xr-x 8 labex labex 4096 Jul 15 12:34 .git
-rw-r--r-- 1 labex labex 16 Jul 15 12:34 README.md
Datei README.md anzeigen
Sehen Sie sich den Inhalt der Datei README.md an:
cat README.md
Die Datei sollte Folgendes enthalten:
## Test Repository
Git-Status überprüfen
Mit dem Befehl git status können Sie den Status Ihres Repositorys prüfen:
git status
Die Ausgabe sollte anzeigen, dass Sie sich auf dem Branch master befinden und Ihr Arbeitsverzeichnis unverändert ist:
On branch master
Your branch is up to date with 'origin/master'.
nothing to commit, working tree clean
Commit-Historie anzeigen
Mit dem Befehl git log können Sie die Commit-Historie des Repositorys anzeigen:
git log
Sie sollten den ersten Commit sehen:
commit abcdef1234567890abcdef1234567890abcdef12 (HEAD -> master, origin/master)
Author: LabEx User <labex@example.com>
Date: Mon Jul 15 12:34:56 2023 +0000
Initial commit
Repository ändern
Nehmen Sie eine einfache Änderung an der Datei README.md vor:
echo "This is a test repository for learning Git authentication." >> README.md
Zeigen Sie den aktualisierten Inhalt an:
cat README.md
Die Datei sollte nun so aussehen:
## Test Repository
This is a test repository for learning Git authentication.
Sie haben nun ein Git-Repository mit Benutzername und Passwort geklont, seinen Inhalt untersucht und eine Datei geändert. In einem realen Szenario würden Sie diese Änderungen committen und an das entfernte Repository übertragen. Auch dafür wäre eine Authentifizierung erforderlich.
Zusammenfassung
In diesem Lab haben Sie Folgendes gelernt:
- Die Grundlagen von Git und die Bedeutung des Klonens eines Repositorys
- Verschiedene Authentifizierungsmethoden für Git, insbesondere die Authentifizierung mit Benutzername und Passwort
- Wie Sie ein Git-Repository mit der richtigen Syntax mithilfe von Benutzername und Passwort klonen
- Welche Sicherheitsaspekte bei der Authentifizierung mit einem Passwort zu beachten sind
- Wie Sie ein geklontes Repository erkunden und Änderungen daran vornehmen
Diese Fähigkeiten sind für Entwickler wichtig, die in Teams zusammenarbeiten. Die Authentifizierung mit Benutzername und Passwort ist zwar verbreitet, doch viele Git-Hosting-Dienste setzen zunehmend auf sicherere Methoden wie Personal Access Tokens oder SSH-Schlüssel. Wenn Sie die Grundlagen der Git-Authentifizierung verstehen, können Sie mit jedem Git-basierten Workflow effektiv arbeiten.



