Einführung in Git

Hinweis: Der folgende Artikel hilft Ihnen dabei: Einführung in Git

Einführung in Git

Als ich anfing, Websites zu erstellen, habe ich „Cowboy-codiert“, was bedeutet, dass ich Dateien oft live auf dem Server bearbeitet habe. Es dauerte nur ein paar kaputte Seiten, bis mir klar wurde, dass das eine schreckliche Idee war. Dann begann ich, Websites lokal auf meinem Computer zu erstellen. Mehr als einmal habe ich eine lokale Datei bearbeitet, nur um die Datei an den falschen Speicherort in meinem FTP-Client zu migrieren. Gelegentlich bedeutete das, dass ich eine Datei überschrieb, die ich nicht reparieren konnte, ohne nach einer Sicherungskopie zu suchen, die ich hoffentlich behalten hatte.

Wenn Sie immer noch mit FTP zu tun haben und Ihre Dateien nicht zurücksetzen können, ist es an der Zeit, sich mit der Verwendung von Git zur Versionskontrolle vertraut zu machen.

Was ist Versionskontrolle?

Ein Versionskontrollsystem (VCS) ist eine Art Software, die Softwareentwicklern hilft, Änderungen an ihrem Code im Laufe der Zeit zu verwalten. Ein gutes VCS-System verfolgt jede vorgenommene Codeänderung. Das heißt, wenn Sie etwas kaputt machen, können Sie zu einer früheren Version des Codes zurückkehren, die funktioniert hat, ohne zu versuchen, „Rückgängig“ zu drücken, bis alles funktioniert.

In einer Teamumgebung hilft Ihnen ein VCS bei der Arbeit mit verschiedenen Mitgliedern, indem es Ihnen Tools zur Verfügung stellt, mit denen Sie Codeänderungen zusammenführen können, wenn verschiedene Mitglieder Dateien aktualisieren.

Eines der Dinge, die ich in Git mache, ist, für jede Funktion, die ich erstelle, einen neuen Zweig zu erstellen. Das bedeutet, dass ich die Änderungen, die ich an einem Zweig vornehme, verfolgen kann, aber dennoch zum aktuellen Stand der Site zurückkehren kann, indem ich zum Hauptzweig zurückkehre. Wir werden später mehr über diesen Workflow sprechen.

Was ist Git?

Git ist ein Versionskontrollsystem, aber es ist nicht das einzige. Das Haupt-WordPress-Repository wird über ausgeführt SVNobwohl Sie eine finden können Git-Kopie sowie. Es gibt auch Mercurial, Visual Source Safe, VESTAUnd viele andere Möglichkeiten.

Trotz all dieser Optionen ist Git das, was fast jeder verwendet, also ist es die Versionskontrolle, über die wir heute etwas lernen werden.

Grundlegende Git-Begriffe und -Befehle

Bevor wir uns mit den Mechanismen der Verwendung von Git befassen, müssen wir einige Begriffe verstehen. Wir werden nur die Begriffe behandeln, mit denen Sie regelmäßig konfrontiert werden.

Hinzufügen: Wenn Sie Änderungen an Ihrem Code vorgenommen haben, verwenden Sie den Befehl git add, um die Änderungen hinzuzufügen, damit sie übernommen werden können.

Zweig: Ein Zweig ist eine Version Ihres Repositorys, die sich vom Hauptarbeitsprojekt unterscheidet. Alle Repositorys verfügen über einen Hauptzweig oder, was in älteren Projekten häufiger vorkommt, über einen Master-Zweig. Kürzlich GitUnd Github haben aufgrund der historischen Probleme mit dem Wort „Master“ damit begonnen, den Standardnamen des Zweigs von „Master“ in „Main“ zu ändern. Mit Git 2.28 ist dies ebenfalls möglich Legen Sie Ihren Standardzweignamen fest für jedes neue Projekt.

Kasse: Sie verwenden den Befehl git checkout, um zwischen verschiedenen Zweigen in einem Repository zu wechseln. Wenn Sie diesen Befehl verwenden, ändert Git den Inhalt der Dateien oder fügt Dateien hinzu und entfernt sie, die sich zwischen den Zweigen unterscheiden.

Lesen:  Was ist Hacking und wie man es vermeidet

Klon: Der Befehl git clone wird verwendet, um eine Kopie eines Repositorys aus dem Quell-Repository zu erstellen. Mit diesem Befehl würden Sie eine lokale Kopie eines Remote-Repositorys abrufen, damit Sie am Code arbeiten können.

Begehen: Sobald Sie git add verwendet haben, müssen Sie git commit verwenden, um den Status Ihrer Dateien in git speichern zu können.

drin: git init erstellt für Sie ein leeres Repository mit allen grundlegenden Dateien, die Git zum Betrieb benötigt.

Verschmelzen: Sobald Sie Änderungen an einem Zweig vorgenommen und diese hinzugefügt und festgeschrieben haben, verwenden Sie den Befehl „git merge“, um diese Änderungen in andere Zweige zu migrieren.

Herkunft: Dies ist der Standardname für die primäre Version des Repositorys. Normalerweise ändere ich meine jedoch so, dass sie eher beschreibend als herkunftsorientiert ist. Wenn ich mit Github arbeite, ändere ich die Einstellungen in Git so, dass origin zu github wird. Das hilft mir, die Dinge in meinem Kopf klar zu halten.

Drücken: Aktualisiert den Remote-Zweig mit den Commits, die in Ihrer lokalen Version des Repositorys vorgenommen wurden.

Repository: Dies kann auch als „Repo“ bezeichnet werden und ist ein Verzeichnis aller Dateien sowie ein Git-Verlauf der Änderungen an diesen Dateien.

Status: git status zeigt Ihnen den aktuellen Status Ihres Arbeits-Repositorys.

.gitignore: Dies ist eine versteckte Datei, die Muster von Dateien enthält, die Git nicht verfolgen wird. Wenn Sie .DS_Store in Ihren .gitignore-Dateien haben, werden alle lästigen Dateien ignoriert, die macOS häufig in Ordnern ablegt.

Hosten von Git-Repositorys

Eine weitere Sache, die Sie vor dem Eintauchen verstehen sollten, ist, dass Sie zwar keinen Remote-Standort für Ihr Repository benötigen, das Fehlen eines solchen jedoch einige der Vorteile der Verwendung von Git schmälert. Ohne ein irgendwo anders gehostetes Remote-Repository haben Sie kein Backup Ihres Codes, falls Ihr Computer ausfällt oder gestohlen wird.

Github Und Bit Bucket sind zwei der beliebtesten Orte zum Hosten Ihrer Git-Repositorys, da sie größtenteils kostenlos sind und Sie private Repositorys haben können. Das bedeutet, dass sich Ihr Code auf dem Server einer anderen Person befindet. Wenn Ihnen diese Idee nicht gefällt, können Sie sie verwenden Gitlab auf Ihrem Server, um Repositorys zu hosten.

Git installieren

Unter macOS können Sie Git am einfachsten installieren, indem Sie Terminal öffnen und „git“ eingeben. Daraufhin werden Sie aufgefordert, die Xcode-Befehlszeilentools herunterzuladen, um Git zu installieren. Sobald dies abgeschlossen ist, können Sie git –version ausführen, um zu sehen, welche Git-Version Sie haben. Wenn das nicht funktioniert, gibt es eine Einige andere Möglichkeiten, Git unter macOS zu installieren.

Für Windows-Benutzer können Sie Git mit installieren offizielles Git-Installationsprogramm. Git wird außerdem mit der Github-Desktop-Anwendung geliefert, über die wir später sprechen werden.

Wenn Sie Linux verwenden, sollte git mit Ihrem Paketmanager gebündelt sein, oder Sie können sich diese Möglichkeiten ansehen Installieren Sie Git unter Linux.

Git-Standardeinstellungen konfigurieren

Sobald Sie Git installiert haben, müssen Sie es so konfigurieren, dass bei jedem Commit Ihr Name und Ihre E-Mail-Adresse sowie Commit-Nachrichten verwendet werden, um mit Ihrem bevorzugten Editor etwaige Kommentare einzugeben, die zum Commit gehören. Wir schauen uns die Möglichkeit an, diese in macOS über die Terminal-Anwendung festzulegen.

git config –global user.name „Ihr Name“ legt den Namen fest, der zu jedem auf Ihrem Computer durchgeführten Commit gehört.

git config –global user.email „[email protected]“ legt die E-Mail-Adresse fest, die mit jedem von Ihnen vorgenommenen Commit verknüpft ist.

git config –global core.editor vim macht den Standardeditor für Git vim. Obwohl ich vim liebe, ist es nicht der Editor, den jeder liebt. Wenn du benutzt Atom Dann würden Sie git config –global core.editor „atom –wait“ oder git config –global core.editor „subl -n -w“ verwenden Erhabener Text.

Lesen:  6 Tipps für die Arbeit von zu Hause aus

Einrichten eines Repositorys

Nachdem wir Git nun installiert und konfiguriert haben, starten wir ein Basis-Repository. Öffnen Sie Ihr Terminal und erstellen Sie einen Ordner namens test-repository, indem Sie mkdir test-repository eingeben. Geben Sie dann cd test-repository ein, um in Ihr test-repository-Verzeichnis zu wechseln, und geben Sie git init ein.

Zu diesem Zeitpunkt befindet sich in Ihrem Ordner ein verstecktes Verzeichnis mit dem Namen .git. Da es sich um eine versteckte Datei handelt, müssen Sie im Terminal ls -a eingeben, um versteckte Dateien aufzulisten.

Mit git add

Jetzt erstellen wir eine Datei, indem wir touch test.txt in das Terminal eingeben. Geben Sie als Nächstes git status ein, um die gerade hinzugefügte Datei anzuzeigen.

Wie Sie sehen können, wird die von uns neu erstellte Datei rot angezeigt und teilt uns mit, dass ihr Status nicht verfolgt ist. Das bedeutet, dass Git die Datei sieht, aber keine Aufzeichnung davon hat.

Geben Sie git add test.txt ein, um Git anzuweisen, diese Datei bereitzustellen. Geben Sie dann erneut git status ein, und Git sollte Ihnen mitteilen, dass es von einer geänderten Datei weiß.

Dateien an Git übergeben

Nachdem wir unsere Datei hinzugefügt haben, müssen wir sie festschreiben, damit Git den Status der Datei speichert. Mit dem folgenden Befehl können wir dies in einer einzigen Zeile tun, ohne unseren Standardeditor zu öffnen.

git commit -m ‘Hinzufügen unserer ersten Datei’

Das Flag -m teilt Git mit, dass die Wörter in einfachen Anführungszeichen der Kommentar sind, der zum Befehl gehört.

Jetzt enthält unser Repository eine einzelne Datei mit dem Status „Gespeichert“.

Erstellen Sie einen Zweig

Die wahre Stärke von Git zeigt sich, wenn Sie mit der Verzweigung beginnen. Nehmen wir an, Sie möchten eine Menge in Ihre test.txt-Datei schreiben, sind sich aber nicht sicher, ob Sie sie am Ende behalten werden, und möchten sicherstellen, dass Sie zur derzeit leeren Datei zurückkehren können. Wir können dies mit einer Verzweigung tun.

Um einen Zweig zu erstellen, können wir git checkout -b new-branch eingeben. Dies ist eine Verknüpfung zum Erstellen eines Zweigs, während wir den Zweig auschecken, und ich verwende sie jedes Mal, wenn ich einen Zweig erstellen muss.

Öffnen Sie nun unsere Datei test.txt, fügen Sie Text hinzu und speichern Sie sie. Verwenden Sie dann git add und git commit wie oben, um den Status der Datei zu speichern.

Geben Sie als Nächstes git checkout master ein, um zum Standardhauptzweig zurückzukehren, und sehen Sie sich dann den Inhalt Ihrer test.txt-Datei erneut an. Sie werden feststellen, dass der gesamte von Ihnen eingegebene Text entfernt wurde. Git würde sogar eine neue Datei löschen, die sich nur in einem Zweig befand, obwohl es Aufzeichnungen darüber führt, sodass sie nicht verloren geht.

Einen Zweig zusammenführen

Jetzt lieben wir alles, was wir in unsere Datei geschrieben haben, also integrieren wir es in unseren Hauptzweig. Stellen Sie sicher, dass Sie sich im Hauptzweig befinden, und geben Sie git merge new-branch ein, um Ihre Änderungen zu integrieren.

Wenn Sie sich jetzt den Inhalt von test.txt ansehen, finden Sie Ihre Änderungen im Hauptzweig genau so, wie Sie sie verlassen haben.

Git mit WordPress verwenden

Obwohl das obige Beispiel äußerst einfach war, ist das alles, was Sie brauchen, um mit Git in Ihren Projekten zu beginnen. Lassen Sie uns also genau darüber sprechen, wie Sie mit Git ein WordPress-Projekt erstellen.

Lesen:  Was ist ein Rechenzentrum und seine Funktionen?

Die erste Überlegung ist, welche Ebene in Ihrer Ordnerhierarchie das Stammverzeichnis Ihres Git-Repositorys sein soll. Wenn Sie eine bauen Thema, dann könnten Sie den Theme-Ordner zu Ihrem Repository machen. Die gleiche Logik gilt, wenn Sie ein erstellen Plugin.

Normalerweise arbeite ich gleichzeitig an Themes und Plugins, daher verwende ich oft den Ordner „wp-content“ als Speicherort für mein Repository. Dabei ignoriere ich unbedingt den Upload-Ordner, damit ich nicht alle Bilder und hochgeladenen Dateien zum Repository hinzufüge. Sie überladen das Repository und können Git verlangsamen, weil es Bilddateien nicht gut komprimieren kann.

Wenn ich einen gesamten Bereitstellungsworkflow abwickle, mache ich den WordPress-Stammordner zum Hauptspeicherort für mein Git-Repository. Dann stelle ich sicher, dass ich wp-content/uploads und wp-config.php zu meiner .gitignore-Datei hinzufüge. wp-config.php ist für jede WordPress-Installation spezifisch, daher möchte ich nicht, dass es über einer anderen Version der Datei bereitgestellt wird, was dazu führen würde, dass die Site nicht mehr funktioniert.

Sie können eine Kopie davon sehen die .gitignore-Datei Ich verwende es als Ausgangspunkt für jedes Projekt. Es wird davon ausgegangen, dass Sie wp-content als Stammverzeichnis Ihres Git-Repositorys verwenden. Daher ändere ich einige der Ignorierungsmuster, wenn ich mich im Stammverzeichnis von WordPress befinde.

Git-GUI-Anwendungen

Obwohl wir die Grundlagen über die Befehlszeile für Git behandelt haben, ist nicht jeder mit der Befehlszeile vertraut. Ich weiß, dass ich es nicht war, als ich anfing, Git zu verwenden. Selbst jetzt möchte ich mir gelegentlich eine visuelle Darstellung dessen ansehen, was Git tut, bevor ich Änderungen an meinem Setup vornehme.

Glücklicherweise gibt es mehrere großartige GUI-Clients für Git, die Sie verwenden können. Lassen Sie uns einige hervorheben.

Github-Desktop (Windows/macOS)

Ein guter Ausgangspunkt für die Betrachtung von Git-GUI-Clients ist die Github-Desktopanwendung.

Viele Open-Source-Projekte nutzen Github als Code-Repository für die Zusammenarbeit und nutzen den Standard Github-Flow ihre Arbeit zu tun. Der Github-Desktop-Client wurde entwickelt, um Sie bei der Bewältigung dieses Ablaufs zu unterstützen und das Erstellen von Pull-Anfragen zu vereinfachen.

Unglücklicherweise für Linux-Benutzer gibt es keine offizielle Github-Desktop-Anwendung, aber einen Fork davon Github Desktop, der auf Linux-Systemen installiert werden kann.

Git Tower (Windows/macOS)

Die Git-GUI, die ich verwende, ist Git-Turm. Git Tower ist für macOS und Windows verfügbar. Als ich mit Git anfing, fand ich es viel einfacher, Konflikte zu lösen und zu sehen, was sich zwischen den Dateien in dieser GUI unterscheidet.

Arbeitskopie (iOS/iPadOS)

Wenn Sie wie ich hauptsächlich mit einem iPad arbeiten, sollten Sie sich das ansehen Arbeitsexemplar. Working Copy ist ein Git-Client mit vollem Funktionsumfang, der mit iOS und iPadOS funktioniert. Es verfügt sogar über eine Shortcuts-Integration, sodass Sie Teile Ihres Git-Workflows automatisieren können.

Zusammenfassung

Obwohl wir heute viele Git-Kenntnisse behandelt haben, gibt es keinen einzigen Blog-Beitrag, der das Thema erschöpfend behandeln könnte. Sie können Ihr Lernen mit dem fortsetzen Notwendige Hilfedokumentation sowie diese hervorragenden Ressourcen.

Wenn Sie Git zum Verwalten Ihrer Kundenprojekte verwenden, ersparen Sie sich Kopfschmerzen, da Sie Änderungen rückgängig machen oder ganze Zweige verwerfen können, wenn Sie die geleistete Arbeit nicht mehr benötigen. Kein Strg+Z mehr, bis Sie denken, dass Sie weit genug zurückgesetzt haben, Git behält für Sie den Überblick.