CodeGym /Kurse /Python SELF DE /Grundlagen der Arbeit mit Git

Grundlagen der Arbeit mit Git

Python SELF DE
Level 12 , Lektion 1
Verfügbar

9.0 Ein bisschen Geschichte

Seit seiner Entstehung hatte das Tool Git DVCS einen Standard-Branch namens master. Jedes Git-Repository hatte einen master-Branch, es sei denn, der Entwickler unternahm explizite Schritte, um ihn zu entfernen, was selten geschah, da der master-Branch eine wichtige Rolle in der Welt der Softwareentwicklung spielt.

Der Gebrauch der Begriffe master und slave (Meister und Sklave) in der Computerindustrie erregte im Sommer 2020 aufgrund zahlreicher Proteste und wachsender sozialer Unruhen viel Aufmerksamkeit. Im Zuge der öffentlichen Diskussion tauchten mehrere Alternativen für master auf, darunter default und primary. Der beliebteste Begriff wurde jedoch main.

GitHub hat Maßnahmen ergriffen und den Begriff master bei der Initialisierung eines Git-Repositories aufgegeben. Der Wechsel von GitHub von master zu main ist in den Kontoeinstellungen unter Repositories oder mit dem Befehl möglich:

$ git branch -m master main

In den Vorlesungen wird weiterhin der Begriff master verwendet. Mehr über den Übergang erfahren Sie unter den folgenden Links:

9.1 Was ist Git und warum brauchen wir es

Git ist ein leistungsstarkes Versionskontrollsystem, das zur Nachverfolgung von Änderungen im Quellcode während der Softwareentwicklung verwendet wird. Es ermöglicht Entwicklern, verschiedene Versionen von Dateien zu speichern und die Arbeit mehrerer Personen an einem gemeinsamen Projekt zu koordinieren.

Grundlegende Git-Konzepte:

Repository

Ein Repository (oder "Repo") ist ein Ort, an dem die gesamte Projektgeschichte gespeichert ist, einschließlich aller Änderungen und Dateiversionen. In Git umfasst ein Repository das Arbeitsverzeichnis, den Index (oder die Staging-Area) und die Objektdatenbank.

Commits

Ein Commit (commit) ist der gespeicherte Zustand des Projekts. Jeder Commit in Git enthält Informationen darüber, welche Änderungen am Projekt vorgenommen wurden, von wem und wann. Commits bilden die Projektgeschichte und ermöglichen es, zu einer vorherigen Version zurückzukehren.

Branches

Ein Branch (branch) ist eine unabhängige Entwicklungslinie. Standardmäßig erstellt Git den Branch main (früher master). Du kannst neue Branches erstellen, um neue Features oder Fehlerbehebungen zu entwickeln, und sie dann zurück in den Hauptbranch zusammenführen.

Merge und Rebase

Merge (merge) und Rebase (rebase) sind zwei Möglichkeiten, um Änderungen von einem Branch in einen anderen zu integrieren. Merge kombiniert die Historien beider Branches und erstellt einen neuen Commit, während Rebase die Commits eines Branches auf die Spitze eines anderen verschiebt und die Commit-Historie ändert.

9.2 Wichtige Git-Befehle

Hier ist eine Tabelle mit den wichtigsten Git-Befehlen zur Versionsverwaltung:

Befehl Beschreibung
git init Initialisiert ein neues Git-Repository im aktuellen Verzeichnis.
git clone Kloniert ein Repository von der URL in ein neues Verzeichnis.
git add Fügt Dateien zum Index für den nächsten Commit hinzu.
git commit Sichert die vorbereiteten Änderungen im Repository.
git push Sendet Änderungen vom lokalen Repository zum entfernten Repository.
git pull Aktualisiert den aktuellen Branch mit der neuesten Version aus dem entfernten Repository.
git branch Zeigt an, erstellt oder löscht Branches.
git merge Fügt die Änderungen des angegebenen Branches in den aktuellen Branch ein.
git rebase Verschiebt Änderungen auf eine neue Basis (meist ein anderer Branch).

Diese Befehle stellen die grundlegenden Werkzeuge für die Arbeit mit Git dar und ermöglichen es, Code-Änderungen, Branches und Merges in Projekten jeder Größenordnung zu verwalten. Mehr dazu werden wir in den nächsten Vorlesungen durchgehen.

9.3 Drei Orte zur Speicherung von Code

Wenn du ein Versionskontrollsystem für deinen Code verwendest, wird er grob gesagt an drei Orten gespeichert:

1. Entferntes Repository:

Dies ist ein zentraler Ort zur Speicherung deines Codes, der normalerweise auf Dienste wie GitHub, GitLab oder Bitbucket gehostet wird. Sie bieten eine zentrale Code-Speicherung und sind die Grundlage für die Zusammenarbeit.

Entfernte Repositories ermöglichen es Entwicklern, ihre Änderungen zu teilen, ihre Bemühungen zu synchronisieren und die Projektgeschichte zu pflegen. Außerdem dient das entfernte Repository als Integrationsstelle für Automatisierungsprozesse wie Build, Testen und Deployment von Anwendungen.

2. Lokales Repository:

Ein lokales Repository ist deine persönliche Kopie des Codes, die auf deinem Computer gespeichert ist. In diesem Repository kannst du alle Git-Operationen (Commits, Branching, Merging) ohne Internetverbindung durchführen.

Lokale Repositories ermöglichen es Entwicklern, isoliert von Kollegen zu arbeiten, zu experimentieren, neue Funktionen zu erstellen oder Fehler zu beheben, bevor Änderungen zusammengeführt (gemerged) und zum entfernten Repository gesendet werden.

3. Arbeitsverzeichnis:

Das Arbeitsverzeichnis auf deinem Computer enthält die aktuellen Dateien des Projekts, an denen du gerade arbeitest. Hier kannst du Dateien anzeigen und ändern, neue Funktionalitäten hinzufügen oder Fehler beheben.

Nach dem Anbringen von Änderungen kannst du sie zum Index (Staging Area) hinzufügen und dann im lokalen Repository fixieren. Das Arbeitsverzeichnis ist mit dem aktuellen Branch in deinem Repository verbunden und das Ändern von Branches ändert den Inhalt des Arbeitsverzeichnisses.

Diese Komponenten bieten gemeinsam eine leistungsstarke Infrastruktur zur Verwaltung von Quellcode, wodurch Entwickler die Projektgeschichte verwalten, zusammenarbeiten und die Verantwortung für den Code teilen können.

9.4 GitHub ist das beliebteste kostenlose Repository

GitHubist die führende Web-Plattform für das Hosting von Quellcode, die das Versionskontrollsystem Git verwendet. Gegründet im Jahr 2008, wurde es schnell zu einem der wichtigsten Werkzeuge für Entwickler weltweit.

GitHub ermöglicht es Benutzern, Repositories zur Verwaltung von Projekten zu erstellen, Änderungen im Code zu kontrollieren und nachzuverfolgen, mit anderen Entwicklern zusammenzuarbeiten und offen oder privat zu entwickeln. Es bietet Funktionen wie Forks, Branches, Pull-Requests und Merges, die es Entwicklern ermöglichen, leicht an Projekten zusammenzuarbeiten.

GitHub enthält auch Funktionen zur Problemverfolgung, Anfragen zu Funktionen, Aufgabenverwaltung und Wikis für jedes Projekt. Die Plattform integriert sich mit zahlreichen Tools und Diensten und bietet umfangreiche Möglichkeiten zur Automatisierung der Entwicklung, Test und Deployment von Anwendungen.

GitHub unterstützt eine umfangreiche Entwickler-Community, in der aktiv über Best Practices in der Programmierung, im Projektmanagement und vieles mehr diskutiert wird. Das macht es nicht nur zu einem Werkzeug zur Projektverwaltung, sondern auch zu einem Zentrum der Community, in dem Entwickler Wissen und Erfahrungen austauschen können.

9.5 Anmeldung auf GitHub

Schritt 1. Gehe zu https://github.com

Schritt 2. Registriere dich…

Schritt 3. Klicke auf die Schaltfläche "New", um ein neues Repository zu erstellen.

Schritt 4. Gib den Namen des Repositories ein und konfiguriere seine Einstellungen.

Schritt 5. Füge dem Projekt eine README-Datei hinzu – die werden wir später noch benötigen.

Schritt 6. Klicke auf "Create repository".

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION