Einführung
Das Klonen eines Git-Repositorys ist eine essentielle Fähigkeit für Entwickler. Bei der Arbeit mit privaten Repositories ist oft eine Authentifizierung erforderlich, um auf den Code zugreifen zu können. Dieses Lab führt Sie durch den Prozess des Klonens eines Git-Repositorys unter Verwendung der Benutzername- und Passwort-Authentifizierung. Sie lernen die korrekte Syntax und Sicherheitsaspekte kennen, um einen sicheren Zugriff auf Remote-Repositories zu gewährleisten.
Git und Repository-Klonen verstehen
Bevor wir mit dem Klonen von Repositories mit Authentifizierung beginnen, wollen wir verstehen, was Git ist und was Klonen im Kontext von Git bedeutet.
Was ist Git?
Git ist ein verteiltes Versionskontrollsystem, das hilft, Änderungen im Quellcode während der Softwareentwicklung zu verfolgen. Es ermöglicht mehreren Entwicklern, an demselben Projekt zu arbeiten, ohne die Änderungen der anderen zu überschreiben.
Einige wichtige Git-Konzepte umfassen:
- Repository (Repository): Ein Speicherort, an dem Ihr Projekt und seine Historie aufbewahrt werden
- Commit (Commit): Ein Snapshot Ihres Projekts zu einem bestimmten Zeitpunkt
- Branch (Branch): Eine parallele Version des Repositorys, die unabhängig entwickelt werden kann
- Remote (Remote): Eine Version Ihres Repositorys, die auf einem Server gehostet wird (z.B. GitHub, GitLab oder Bitbucket)
Was ist Git-Klonen?
Das Klonen eines Git-Repositorys bedeutet, eine Kopie eines Remote-Repositorys auf Ihrem lokalen Rechner zu erstellen. Wenn Sie ein Repository klonen, laden Sie alle Dateien, Branches und die Commit-Historie herunter. Dies ermöglicht es Ihnen, lokal an dem Projekt zu arbeiten und später Ihre Änderungen zurück in das Remote-Repository zu pushen.
Überprüfen der Git-Installation
Bevor wir fortfahren, wollen wir überprüfen, ob Git auf unserem System installiert ist. Öffnen Sie Ihr Terminal und führen Sie aus:
git --version
Sie sollten eine Ausgabe ähnlich der folgenden sehen:
git version 2.34.1
Dies bestätigt, dass Git installiert und einsatzbereit ist. Im nächsten Schritt werden wir die Syntax zum Klonen von Repositories mit Authentifizierung untersuchen.
Git-Klonen-Authentifizierungsmethoden
Beim Klonen von Git-Repositories gibt es verschiedene Möglichkeiten, sich zu authentifizieren, um auf das Remote-Repository zuzugreifen. Lassen Sie uns die gängigsten Authentifizierungsmethoden untersuchen und uns dabei auf die Benutzername- und Passwort-Authentifizierung konzentrieren.
Gängige Authentifizierungsmethoden
Git unterstützt verschiedene Authentifizierungsmethoden:
- HTTPS mit Benutzername und Passwort: Verwendung Ihrer Git-Hosting-Kontoanmeldeinformationen
- SSH-Schlüssel (SSH keys): Verwendung von Public- und Private-Key-Paaren
- Personal Access Tokens (Persönliche Zugriffstoken): Verwendung generierter Token anstelle von Passwörtern
- OAuth: Verwendung der Autorisierung durch Drittanbieterdienste
HTTPS-Authentifizierungs-Syntax
Für dieses Lab konzentrieren wir uns auf die HTTPS-Authentifizierung mit Benutzername und Passwort. Die grundlegende Syntax zum Klonen eines Repositorys mit Benutzername-Authentifizierung lautet:
git clone https://username@repository-url.git
Das System fordert Sie dann zur Eingabe Ihres Passworts auf. Eine alternative Syntax, die sowohl Benutzernamen als auch Passwort in der URL enthält, ist:
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 Ihrer Shell-Historie gespeichert wird.
Sicherheitsaspekte
Beachten Sie bei der Verwendung der Passwort-Authentifizierung folgende Sicherheitspunkte:
- Geben Sie Ihre Anmeldeinformationen niemals an andere weiter
- Achten Sie darauf, Ihr Passwort nicht an öffentlichen Orten einzugeben
- Viele Git-Hosting-Dienste (GitHub, GitLab) empfehlen jetzt die Verwendung von persönlichen Zugriffstoken anstelle von Passwörtern
- Erwägen Sie die Verwendung von Credential Caching (Anmeldeinformations-Caching), um zu vermeiden, dass Sie Ihr Passwort wiederholt eingeben müssen
Nachdem Sie nun die Authentifizierungsmethoden verstanden haben, bereiten wir uns im nächsten Schritt auf das Klonen eines Repositorys vor.
Klonen eines Git-Repositorys mit Benutzername und Passwort
Nachdem wir nun die Grundlagen verstanden haben, wollen wir eine praktische Übung durchführen, um ein Git-Repository mit Benutzername- und Passwort-Authentifizierung zu klonen.
Vorbereiten Ihres Arbeitsbereichs
Navigieren Sie zunächst in das Projektverzeichnis, in dem Sie das Repository klonen möchten:
cd ~/project
Klonen eines Repositorys
Für diese Übung klonen wir ein Test-Repository mit dem Benutzernamen labex_user und dem Passwort labex_password. Die Repository-URL lautet https://localhost/git-server/test-repo.git.
Geben Sie den folgenden Befehl ein, um das Repository zu klonen:
git clone https://labex_user@localhost/git-server/test-repo.git
Geben Sie bei Aufforderung das Passwort labex_password ein.
Wenn Sie Probleme mit dem obigen Befehl haben, können Sie alternativ die kombinierte Syntax verwenden (obwohl diese für die reale Welt weniger sicher ist):
git clone https://labex_user:labex_password@localhost/git-server/test-repo.git
Erwartete Ausgabe
Nachdem Sie den Klonbefehl ausgeführt haben, sollten Sie eine Ausgabe ähnlich der folgenden sehen:
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.
Überprüfen des Klons
Um zu bestätigen, dass das Repository erfolgreich geklont wurde, lassen Sie uns den Inhalt des neuen Verzeichnisses überprüfen:
ls -la test-repo
Sie sollten den Repository-Inhalt sehen, einschließlich der Datei README.md und des Verzeichnisses .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
Nachdem Sie das Repository erfolgreich geklont haben, können Sie dessen Inhalt untersuchen und mit der Arbeit beginnen.
Erkunden und Arbeiten mit dem geklonten Repository
Nachdem Sie das Repository erfolgreich geklont haben, wollen wir es erkunden und lernen, wie man damit arbeitet.
Navigieren zum Repository-Verzeichnis
Navigieren Sie zunächst zum geklonten Repository:
cd ~/project/test-repo
Anzeigen des Repository-Inhalts
Um den Inhalt des Repositorys anzuzeigen, verwenden Sie den Befehl ls:
ls -la
Sie sollten die Datei README.md und das Verzeichnis .git sehen:
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
Anzeigen der Datei README.md
Lassen Sie uns den Inhalt der Datei README.md untersuchen:
cat README.md
Die Datei sollte Folgendes enthalten:
## Test Repository
Überprüfen des Git-Status
Um den Status Ihres Repositorys zu überprüfen, verwenden Sie den Befehl git status:
git status
Die Ausgabe sollte anzeigen, dass Sie sich auf dem Hauptzweig (main branch) befinden und Ihr Arbeitsverzeichnis sauber ist:
On branch master
Your branch is up to date with 'origin/master'.
nothing to commit, working tree clean
Anzeigen der Commit-Historie
Um die Commit-Historie des Repositorys anzuzeigen, verwenden Sie den Befehl git log:
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
Änderungen am Repository vornehmen
Lassen Sie uns eine einfache Änderung an der Datei README.md vornehmen:
echo "This is a test repository for learning Git authentication." >> README.md
Zeigen Sie den aktualisierten Inhalt an:
cat README.md
Die aktualisierte Datei sollte wie folgt aussehen:
## Test Repository
This is a test repository for learning Git authentication.
Nun haben Sie erfolgreich ein Git-Repository mit Benutzername- und Passwort-Authentifizierung geklont, dessen Inhalt erkundet und Änderungen an einer Datei vorgenommen. In einem realen Szenario würden Sie diese Änderungen committen und zurück zum Remote-Repository pushen, was ebenfalls eine Authentifizierung erfordern würde.
Zusammenfassung
In diesem Lab haben Sie Folgendes gelernt:
- Die Grundlagen von Git und was das Klonen eines Repositorys bedeutet
- Verschiedene Authentifizierungsmethoden für Git, mit Schwerpunkt auf der Benutzername- und Passwort-Authentifizierung
- Wie man ein Git-Repository mit Benutzername und Passwort mit der korrekten Syntax klont
- Sicherheitsaspekte bei der Verwendung der Passwort-Authentifizierung
- Wie man ein geklontes Repository erkundet und Änderungen daran vornimmt
Diese Fähigkeiten sind für Entwickler, die in kollaborativen Umgebungen arbeiten, unerlässlich. Während die Benutzername- und Passwort-Authentifizierung üblich ist, wechseln viele Git-Hosting-Dienste zu sichereren Authentifizierungsmethoden wie Personal Access Tokens oder SSH-Keys. Das Verständnis der Grundlagen der Git-Authentifizierung hilft Ihnen, effektiv mit jedem Git-basierten Workflow zu arbeiten.



