Willkommen zu dieser Anleitung, in der wir uns mit Versionierung und Teamarbeit in der Softwareentwicklung beschäftigen werden. Sie lernen, wie Sie ein privates Git-Repository einrichten und dieses mit einem SSH-Zielverzeichnis synchronisieren. Dieses Setup ist ideal für die Entwicklung von WordPress-Plugins, -Themes oder andere Codebestandteile, bei denen eine detaillierte Bearbeitungshistorie und Team-Kollaboration entscheidend sind.
Meistern Sie Git und SSH: Ein Leitfaden auf dem Weg zum Profi im Code-Management • WooCommerce & WordPress Entwicklerin Hannover
Entdecken Sie die Welt von Git und SSH! Lernen Sie, wie Sie Ihr eigenes Git-Repository erstellen, mit einem SSH-Server synchronisieren und effektiv im Team arbeiten.
Kursanbieter: Person
Name des Kursanbieters: Saskia Teichmann
Kursanbieter-URL: https://www.saskialund.de/
Kursmodus: Online
Arbeitsaufwand des Kurses: PT30M
Kurstyp: Free
Vorbereitungen für diesen Leitfaden
Bevor Sie beginnen, stellen Sie sicher, dass Ihr lokales Setup folgende Voraussetzungen erfüllt:
- Git installiert: Überprüfen Sie, ob Git auf Ihrem System und auf dem gewünschten Remote Server installiert ist. Falls nicht, können Sie es von git-scm.com herunterladen und installieren.
- SSH-Zugang: Stellen Sie sicher, dass Sie SSH-Zugang zu dem Server haben, mit dem Sie arbeiten möchten.
- Texteditor: Ein grundlegender Texteditor wie Nano, Vim oder ein ähnliches Programm sollte installiert sein.
- Internetverbindung: Eine stabile Internetverbindung ist erforderlich, um mit Remote-Repositories zu interagieren.
Einrichten eines privaten, lokalen Git-Repositories
Zunächst richten Sie Ihr eigenes privates Git-Repository ein. Dieses Repository dient als zentrale Anlaufstelle, in der alle Versionen Ihres Codes gespeichert werden.
git init MeinProjekt # Initialisiert ein neues Git-Repository namens 'MeinProjekt'
cd MeinProjekt # Wechselt in das soeben erstellte Verzeichnis
git add . # Fügt alle aktuellen Dateien zum Repository hinzu
git commit -m "Erster Commit" # Erstellt einen 'Commit' mit der Nachricht 'Erster Commit'
Synchronisieren des Git-Repositories mit einem SSH-Zielverzeichnis
Hier synchronisieren Sie Ihr lokales Git-Repository mit einem Remote-Verzeichnis über SSH. Dies ermöglicht es Ihnen, Ihre Arbeit sicher auf einem entfernten Server zu speichern und mit Teammitgliedern zu teilen.
ssh root@ihr-server.com "mkdir /pfad/zum/zielverzeichnis" # Erstellt ein Verzeichnis auf dem Server
ssh root@ihr-server.com "cd /pfad/zum/zielverzeichnis; git init --bare" # Initialisiert ein 'bare' Git-Repository auf dem Server
git remote add origin ssh://root@ihr-server.com/pfad/zum/zielverzeichnis # Verknüpft Ihr lokales Repository mit dem entfernten Repository. Das Remote Repository wird nun unter der Kennung "origin" geführt. Sie können auch eine andere Kennung verwenden.
git push origin master # Schickt Ihre lokalen Änderungen zum Remote-Repository
Arbeiten mit GitHub
Wenn Sie lieber mit GitHub arbeiten, oder zusätzlich ein weiteres Remote-Repository anbinden möchten, können Sie Ihr lokales Repository außerdem mit einem GitHub-Repository verbinden:
ssh root@ihr-server.com "mkdir /pfad/zum/zielverzeichnis" # Erstellt ein Verzeichnis auf dem Server
ssh root@ihr-server.com "cd /pfad/zum/zielverzeichnis; git init --bare" # Initialisiert ein 'bare' Git-Repository auf dem Server
git remote add origin ssh://root@ihr-server.com/pfad/zum/zielverzeichnis # Verknüpft Ihr lokales Repository mit dem entfernten Repository
git push origin master # Schickt Ihre lokalen Änderungen zum Remote-Repository
Automatisches Pushen von Releases (Veröffentlichungen) auf das SSH-Ziel
Automatisieren Sie das Deployment Ihrer Änderungen auf den Server mit einem Post-Receive-Hook:
ssh root@ihr-server.com # Verbindet sich mit dem Server
cd /pfad/zum/zielverzeichnis # Wechselt in das Zielverzeichnis
nano hooks/post-receive # Erstellt oder bearbeitet das 'post-receive' Hook-Skript
Fügen Sie das folgende Skript ein, um automatisch Änderungen im Arbeitsverzeichnis auf dem Server zu übernehmen:
#!/bin/sh
GIT_WORK_TREE=/pfad/zum/arbeitsverzeichnis git checkout -f # Aktualisiert das Arbeitsverzeichnis auf dem Server mit den neuesten Änderungen
chown -R benutzername:gruppenname /pfad/zum/arbeitsverzeichnis # Ändert den Eigentümer der Dateien im Arbeitsverzeichnis
chmod +x hooks/post-receive # Macht das Skript ausführbar
Optional:
chown -R 33:33 /pfad/zum/arbeitsverzeichnis # Sorgt dafür, dass die Dateien und Verzeichnisse im Arbeitsverzeichnis einem bestimmten Serverbenutzer und Serverbenutzergruppe zugeordnet wird. Ich verwende hier 33:33, denn dies sind die IDs meines Webserverbenutzers und der Webserverbenutzergruppe www-data.
Änderungen vom SSH-Ziel in das lokale Repository ziehen
Änderungen, die auf dem SSH-Zielserver vorgenommen wurden, in Ihr lokales Repository übertragen:
ssh root@ihr-server.com # Verbindet sich mit dem Server
cd /pfad/zum/arbeitsverzeichnis # Wechselt in das Arbeitsverzeichnis auf dem Server
git add . # Fügt alle neuen oder geänderten Dateien zum Commit hinzu
git commit -m "Beschreibung der Änderungen" # Erstellt einen neuen Commit mit Ihrer Änderungsbeschreibung
git push origin master # Schickt die Änderungen zum Remote-Repository
git pull origin master # Zieht die neuesten Änderungen vom Remote-Repository in Ihr lokales Repository
Änderungen vom GitHub Remote Repository ins lokale Repository übernehmen
Zuletzt lernen Sie, wie man Änderungen, die im GitHub Remote Repository gemacht wurden, effizient in das lokale Repository integriert. Dies ist besonders nützlich, wenn Sie in einem Team arbeiten, wo mehrere Personen gleichzeitig an unterschiedlichen Teilen eines Projekts arbeiten, wie zum Beispiel bei der Entwicklung komplexer Software oder beim gemeinschaftlichen Erstellen eines WordPress-Themes oder -Plugins. Durch das regelmäßige Aktualisieren Ihres lokalen Repositories stellen Sie sicher, dass Sie immer auf dem neuesten Stand der gemeinsamen Arbeit sind.
git fetch origin master # Holt die neuesten Informationen vom GitHub-Repository
git merge origin/master # Führt die Änderungen vom GitHub-Repository in Ihr lokales Repository ein
Fazit: Gemeinsam wachsen durch Teilen und Lernen
Wir sind nun am Ende dieses Leitfadens angelangt, und ich hoffe, dass diese Einblicke in die Verwendung von Git und SSH für Sie nützlich sind. Denken Sie daran, dass das Meistern dieser Tools nicht nur Ihre individuellen Fähigkeiten in der Softwareentwicklung verbessert, sondern auch den Weg für effizientere und harmonischere Teamprojekte ebnet.
Ich lade Sie herzlich dazu ein, Ihre Gedanken, Erfahrungen oder Fragen in den Kommentaren zu teilen. Haben Sie bereits Erfahrungen mit Git und SSH gemacht? Gibt es bestimmte Herausforderungen, denen Sie begegnet sind, oder Tipps, die Sie mit der Community teilen möchten? Ihr Feedback ist nicht nur für mich, sondern auch für andere Leserinnen und Leser von großem Wert.
Ihr Beitrag könnte der Schlüssel sein, der jemand anderem hilft, ein Problem zu lösen oder eine neue Perspektive zu entdecken. Ich freue mich darauf, von Ihnen zu hören!
Bis zum nächsten Mal, bleiben Sie neugierig und engagieren Sie sich in der Welt des Codings! 🌟👨💻👩💻
0 Kommentare