‫Jonas: Kommen wir nun
‫ganz schnell zu den absoluten Grundlagen von
‫Git, und dies ist keineswegs ein vollständiger Überblick über Git.
‫Alles, was ich hier tun möchte,
‫ist, Sie so schnell wie möglich mit Git
‫zu beginnen, damit wir unser Projekt dann auf Heroku bereitstellen können.
‫Und wie ich im letzten Video
‫erwähnt habe, werde ich jetzt Git in der Befehlszeile verwenden, in Ordnung?
‫Und tatsächlich verwende ich
‫das Terminal hier in VS Code wieder.
‫Lassen Sie uns jetzt den aktuellen Prozess hier beenden, okay?
‫Und jetzt erstellen Sie hier in
‫unserem lokalen Projektordner ein
‫neues Repository, und das tun wir, indem wir git init schreiben, okay?
‫Drücken Sie die Eingabetaste und das war's.
‫Wir haben also einfach ein leeres Git-Repository initialisiert, oder wir
‫können es auch nur ein Repository nennen.
‫Das ist also etwas einfacher zu sagen.
‫Um ein neues Repository oder Repository für
‫Ihr Projekt zu erstellen,
‫müssen Sie also wieder zu diesem
‫Projektordner navigieren, was hier in VS Code automatisch geschieht.
‫Wir sind also automatisch genau hier
‫im Home-Ordner und dann schreibst du dort git
‫init, und damit wird dann dieses neue Repository hochgefahren.
‫Und hier in meiner Befehlszeile können
‫Sie jetzt tatsächlich diesen gelben Teil der Eingabeaufforderung sehen, und wahrscheinlich
‫haben Sie das auf Ihrem Terminal nicht, und es
‫spielt keine Rolle.
‫Das heißt hier also nur, dass
‫wir im Moment ein Repository mit einem Zweig namens master haben, okay?
‫Und etwas mehr über den Master-Zweig später.
‫Wie auch immer, bevor wir jetzt etwas anderes
‫tun, erstellen wir eine spezielle Datei namens gitignore und
‫fügen dort alle Dateien hinzu,
‫die wir nicht in unserem Repository haben möchten.
‫Das ist also eine
‫Art Konfigurationsdatei wie diese hübscher oder eslint-Konfigurationen.
‫So kann ich hier eine neue erstellen.
‫Die Ausgabe hier.
‫So . gitignore, so, in Ordnung?
‫Und VS Code
‫hat diese Datei tatsächlich einmal
‫mehr erkannt und dieses nette Symbol hinzugefügt.
‫Und der erste Ordner,
‫den wir eigentlich komplett ignorieren wollen, ist der
‫Ordner node_modules, also schreiben wir node_modules, in Ordnung?
‫Geben Sie ihm eine Sekunde Zeit
‫und möchten Sie dann auch die Konfigurationsdatei ignorieren.
‫Also alle Umgebungsvariablendatei.
‫Und so können wir alle sagen. env-Dateien, okay?
‫Also den Ordner node_modules wollen wir wirklich
‫nicht in unserem Repository haben, weil das einfach nicht nötig ist.
‫Wenn wir also zum Beispiel unser
‫Repository auf GitHub hochladen, möchten wir nicht all diese Zehntausenden
‫von Dateien hochladen, denn sobald wir das
‫Projekt von GitHub woanders
‫heruntergeladen haben, können wir den Ordner node_modules
‫problemlos abrufen zurück, indem Sie npm install schreiben, oder?
‫Denken Sie also daran, dass es bei Git auch um das
‫Teilen geht, nicht nur um das Speichern Ihres Codes mit Snapshots im
‫Laufe der Zeit, sondern auch um diese ganze Zusammenarbeit.
‫Hier in VS Code auf dieser linken
‫Seite haben wir tatsächlich diese Integration mit Git.
‫Wenn Sie also hier klicken,
‫sehen Sie alle Dateien, die als geändert markiert sind.
‫Nun, im Moment sehen wir
‫hier keine, also lasst uns einfach neu laden, aber sie werden immer noch
‫nicht hier angezeigt, und ich denke, das
‫liegt daran, dass wir anfangs zu viele Dateien
‫in node_modules hatten und VS Code jetzt etwas verwirrt ist damit.
‫Sehen wir uns unsere Probleme an.
‫Nein, damit hat es nichts zu tun, in Ordnung?
‫Aber das ist sowieso egal, okay?
‫Wichtig ist, dass wir jetzt auch alle
‫diese geänderten Dateien sehen können, indem wir git status schreiben.
‫So, okay?
‫Und hier sind nun alle Dateien und Ordner, die im
‫Grunde noch nicht in unser Repository übernommen wurden.
‫Bei Git dreht sich alles um Commit, und nun lernen
‫wir, wie wir Dateien in das Repository übertragen können,
‫und das ist ein zweistufiger Prozess.
‫Zuerst müssen wir die Dateien zu einem sogenannten Staging-Bereich hinzufügen, und erst
‫wenn sie sich in diesem Bereich befinden,
‫können wir dann alle
‫Dateien, die dort sind, zu einem neuen Commit übertragen, in Ordnung?
‫Also machen wir das.
‫Also git add, und wenn ich dann alle Dateien
‫hinzufügen möchte, kann ich einfach -A schreiben, habe ich recht?
‫Das dauert jetzt ein bisschen,
‫weil es so viele Dateien gibt,
‫und wenn ich jetzt noch einmal git
‫status schreibe, sehen wir, jetzt sind alle tatsächlich grün.
‫Hier können Sie also all die Tonnen dieser
‫Dateien sehen, die jetzt zu unserem Git-Commit hinzugefügt werden, okay?
‫Eigentlich möchte ich diese zwischengespeicherten Dateien nicht in
‫diesem Cache-Ordner haben,
‫also lass uns diesen Ordner schnell loswerden.
‫Okay, also ich hoffe sie sind jetzt tatsächlich auch davon weg.
‫Hoffen wir also, dass sie jetzt auch von hier weg sind.
‫Und löschen, sie sind jetzt gelöscht, also sind sie
‫nicht mehr hier, aber
‫mal sehen, ob alle anderen noch da sind.
‫Okay, Sie sehen, dass diese nicht für das Festschreiben
‫bereitgestellt sind, aber
‫alle anderen Dateien werden jetzt an das Repository übergeben.
‫Für Sie klingt es jetzt wahrscheinlich etwas verwirrend,
‫warum wir diese Dateien zuerst in den Staging-Bereich aufnehmen müssen
‫und erst dann festgeschrieben werden können.
‫Und der schnelle Grund dafür ist, dass
‫Sie möglicherweise verschiedene Dateien für verschiedene Commits hinzufügen möchten, okay?
‫Stellen Sie sich also vor, Sie ändern 10 Dateien,
‫möchten aber nur fünf davon an einen bestimmten Commit übergeben.
‫Und so können Sie das durch Inszenierung tun.
‫Aber wir wollen es hier einfach nur sehr einfach halten und
‫fügen einfach alle Dateien zu
‫diesem Staging-Bereich hinzu und übertragen sie dann alle.
‫Und eigentlich machen wir es noch
‫einmal, denn jetzt habe ich alle diese Dateien gelöscht.
‫Also lasst uns git wieder -A hinzufügen, okay?
‫Und jetzt sind wir bereit,
‫die Dateien zu übertragen, indem wir git
‫commit -m schreiben und dann eine Commit-Nachricht angeben.
‫Und diese Nachricht sollte wirklich beschreiben,
‫welche Änderungen Sie vorgenommen haben.
‫Normalerweise heißt der erste Commit Initial Commit, also lassen Sie uns
‫das auch hier tun.
‫Also Initial Commit, Return drücken, und das war's.
‫Mit diesem Commit haben
‫wir also alle Änderungen im Repository gespeichert,
‫und wieder ist ein Commit wie eine Momentaufnahme
‫des gesamten Codes zu einem bestimmten Zeitpunkt, in Ordnung?
‫Und die Philosophie besteht darin, jedes Mal, wenn Sie wesentliche Änderungen
‫an Ihrer Codebasis vornehmen, einen neuen Commit zu erstellen.
‫Das Commit-Konzept ist also wirklich der zentrale Punkt von Git.
‫Alles dreht sich also ums Begehen, okay?
‫Und jetzt versuchen wir einfach, hier eine Datei zu ändern.
‫So können wir all diese schließen.
‫Lassen Sie uns nun die App öffnen. js hier, in Ordnung?
‫Schließen Sie dies noch etwas.
‫Und hier sagen wir einfach Express-App starten.
‫Speichern Sie es und Sie sehen sofort
‫in VS Code, wie wir diese grüne Linie erhalten.
‫Und das bedeutet,
‫dass an dieser Stelle etwas Neues eingefügt wurde.
‫Sie können es jetzt auch
‫anklicken und im Wesentlichen sehen, wie es vorher aussah,
‫und Sie können auch gleich hier in der Zeit zurückgehen.
‫Machen Sie die Änderung also rückgängig.
‫Und das gleiche, wenn Sie etwas löschen.
‫Lassen Sie uns diese Codezeile einfach löschen.
‫Und hier sehen Sie, dass es
‫vorher im Grunde etwas gab.
‫Sie können also wieder darauf
‫klicken und im Grunde sehen, was vorher war.
‫Sie können in der Zeit
‫zurückgehen, und das tun wir, um sie zurückzubringen.
‫Versuchen wir nun schnell, es hier zu
‫laden, aber aus irgendeinem Grund erscheinen die geänderten Dateien hier nicht.
‫Also idealerweise jetzt App. js wäre hier in dieser
‫Liste, weil das die Datei ist, die ich gerade bearbeitet habe, okay?
‫Aber auch das ist sowieso nicht wirklich wichtig.
‫Es sollte auch hier in diesem
‫Dateibaum mit einer anderen Farbe angezeigt werden, sobald ich es bearbeitet habe, okay?
‫Wenn wir jetzt noch einmal
‫git status sagen, sehen Sie hier modifiziert: app. js, okay?
‫Das ist also die einzige Ausgabe, die wir
‫hier haben, und Sie sehen auch,
‫dass die Änderungen noch nicht für den Commit bereitgestellt sind, okay?
‫Und jetzt fügen wir sie alle noch einmal hinzu.
‫Also git add und dann -A, oder wir
‫könnten auch einfach diese einzelne Datei zum Add hinzufügen.
‫Also App. js, in Ordnung?
‫Versuchen wir es noch einmal mit git status, und jetzt ist es grün.
‫Das bedeutet, dass die Änderungen festgeschrieben werden, sobald
‫wir ein neues Festschreiben durchführen.
‫Also lass uns das tun, git commit -m.
‫Für die Nachricht, Kommentar hinzugefügt, und
‫das war's.
‫Sie sehen also, die Nachricht hat den Kommentar hinzugefügt.
‫Eine Datei hat sich geändert und es wurde einmal eingefügt.
‫Das ist also diese Zeile hier.
‫Und nun ist der grüne Balken, den wir hier hatten, weg,
‫und das bedeutet, dass jetzt alles wieder sauber ist.
‫Jetzt sehen Sie auch, dass dieser Master hier, Sie
‫sehen ihn auch hier,
‫und das bedeutet, dass wir uns im Master-Zweig befinden.
‫Branches sind also ein weiteres sehr wichtiges Konzept in Git, aber darauf
‫werde ich an dieser Stelle nicht näher eingehen.
‫Vorerst werden wir immer nur im Master-Zweig arbeiten.
‫Großartig, jetzt haben Sie also ein lokales Repository, in
‫dem Ihr gesamter Code festgeschrieben ist.
‫Lassen Sie uns diesen Branch
‫im nächsten Video tatsächlich auf einen Remote-Branch auf GitHub verschieben.
‫Hosten Sie es also im Grunde auf dem GitHub-Konto, das
‫wir gerade zuvor erstellt haben.
‫Ich hoffe also, Sie bald dort zu sehen.