Geekflare wird von unserem Publikum unterstützt. Wir können Affiliate-Provisionen durch den Kauf von Links auf dieser Website verdienen.
Teilen:

Open Source 101: Versionskontrollsystem und Git

Open Source 1
Invicti Web Application Security Scanner – die einzige Lösung, die eine automatische Verifizierung von Schwachstellen mit Proof-Based Scanning™ bietet.

Erste Schritte mit Open-Source-Ökosystemen.

Open Source

Open-Source-Projekte sind solche Arten von Software, deren Quellcode der Öffentlichkeit zugänglich und kostenlos ist. Sie werden regelmäßig von Personen gewartet, die sich frei für die Implementierung neuer Funktionen oder die Behebung von Fehlern einsetzen, damit die Benutzer kontinuierlich von der Verwendung der Software profitieren.

In diesem Tutorial werden wir sehen, wie wir mit Open Source beginnen können - angefangen beim Erlernen von Git und Versionskontrolle. Das bedeutet, dass dieses Stück für Anfänger gedacht ist, aber erfahrene Entwickler können ein paar Dinge lernen.

Version Control

Stellen Sie sich eine Künstlerin vor, die ein Kind zeichnet, während ihr Bleistift auf die Leinwand trifft. Die Arbeit nimmt Gestalt an, aber am Ende wird nur eine Arbeit verfügbar sein. Was ist, wenn, wie der Künstler malt, in jeder Phase eine neue Version produziert wird? Nachdem sie den Kopf des Kindes gezeichnet hat, speichert sie diese Version, indem sie sie auf einem System aufstellt. Sie zeichnet weiter; Dadurch wird eine neue Version erstellt. Sie kann diese aktualisierte Version separat speichern, eine andere Kopie, die eine Erweiterung der vorherigen Version ist, die sie gespeichert hat, sodass sie jetzt über zwei verfügbare Versionen verfügt. Die neu aktualisierte Version hat auch das, was sie zuvor getan hat.

Während sie an der Zeichnung arbeitet, kommt eine zweite Künstlerin und bittet sie, die rechte Hand des Kindes zu zeichnen. Er zieht die zweite Version und arbeitet daran, ohne direkte Änderungen an der aktuellen Arbeit des ersten Künstlers vorzunehmen. Am Ende haben insgesamt drei Künstler zu dem Gemälde beigetragen, und es stehen 20 Versionen zur Verfügung, einschließlich der fertigen Version mit der Möglichkeit, dass sie zu einer früheren Version zurückkehren und etwas völlig Neues damit machen.

Dies ähnelt der Funktionsweise der Versionskontrolle. Es ist ein System, das es Entwicklern ermöglicht, Beiträge zur Software als Team zu verwalten. Wenn wir in unserem Beispiel eine spezielle Art von Leinwand erstellen, die die Versionen der gezeichneten Bilder generiert und speichert, ist dieses System eine Art Versionskontrollsystem, das Künstlern dabei hilft, ihren Beitrag zum Kunstmachen zu verwalten.

Dieses Versionskontrollsystem (das auch als VCS bezeichnet wird) sollte in der Lage sein, Unterschiede zwischen den erstellten Arbeitsversionen aufzuzeigen und Szenarien zu erkennen, in denen es zu Konflikten (oder Konflikten) zwischen einer alten und einer neuen Version kommen wird. Wenn beispielsweise ein Künstler am Arm und andere Arbeiten an der Hand arbeiten, sollten diese beiden Teile perfekt passen, als wären sie zusammengezogen. In Fällen, in denen dies nicht der Fall ist, sollte der Unterschied erkannt und die Künstler darauf aufmerksam gemacht werden.

Dieses Versionskontrollsystem verwaltet die Arbeit, die von verwaltet wird.

  • Speichern von Versionen derselben Arbeit oder desselben Projekts, bei denen es sich um eine Sammlung der Änderungen (Verlauf) des Projekts (Software) handelt.
  • Ermöglichen Sie dem Team, die Änderungen zu kommunizieren, die bei der Arbeit an dem dafür vorgesehenen Teil vorgenommen wurden
  • Es kann auch als Backup der geleisteten Arbeit dienen.

Git

Git ist ein modernes Versionskontrollsystem, das häufig für die Entwicklung von Software verwendet wird. Es bietet Ihnen alle Vorteile, die Sie durch die Verwendung eines Versionskontrollsystems erhalten können, sowie zusätzliche, die einen Beitrag zu Open Source ermöglichen.

Mit git können alle Entwickler, die an einem System arbeiten, eine Kopie der Software auf ihrem lokalen Computer haben. Dies ist ein Ergebnis von git ist ein verteiltes Versionskontrollsystem.

Wenn Sie git noch nicht auf Ihrem Computer installiert haben, können Sie dazu die folgenden Anweisungen befolgen.

Git installieren

Um git nutzen zu können, muss es auf Ihrem lokalen Computer installiert sein. In diesem Tutorial wird die Installation unter Linux (Ubuntu), Mac und Windows beschrieben.

Führen Sie diesen Befehl von Ihrem Terminal aus aus, um sicherzustellen, dass git noch nicht installiert ist.

git --version

Wenn Sie eine Fehlermeldung erhalten, die besagt, dass der Befehl nicht gefunden werden kann, können Sie ihn je nach verwendetem Betriebssystem installieren.

Ubuntu

Führen Sie in Ihrem Terminal die folgenden Befehle aus:

sudo apt install git

Mac

Beginnen wir mit der Installation von Brew - einem Paketmanager, der das Installieren und Kompilieren von Paketen vereinfacht.

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Windows

Sie können die offizielle Git-Version für Windows von herunterladen hier.

Der nächste Schritt ist die Konfiguration von git mit unseren Details. Während wir dabei sind, werden wir auch die Arbeit mit unserem Github-Konto intensivieren. Dies ist dann der perfekte Zeitpunkt, um über Github zu sprechen.

Github

Kehren wir zu dem imaginären Versionskontrollsystem zurück, das wir für Künstler erstellen wollten.

Denken Sie daran, wie wir gesagt haben, dass Git eine Art Versionskontrollsystem ist. Während das Versionskontrollsystem den Künstlern bei der Zusammenarbeit hilft, werden sie irgendwann eine Möglichkeit benötigen, die verschiedenen Arbeiten, die sie gemacht haben, zu speichern. Während jedes Projekt von einem Versionskontrollsystem verwaltet wird, ist es großartig, wenn es eine Möglichkeit gibt, die abgeschlossenen Arbeiten zu behalten (zu speichern). Hier kommt Github ins Spiel.

Stellen Sie sich das als Aktenschrank vor, der die verschiedenen Projekte in etwas enthält, das wir als Schränke bezeichnen können. Der Junge, den die Künstler gezeichnet haben, wird in einem Schrank aufbewahrt und von git verwaltet. Wenn sie ein anderes Projekt starten, wird dieses in einem anderen Schrank gespeichert und auch von git verwaltet. Jedes dieser Projekte wird unabhängig davon sein, wie Git sie verwaltet.

In der Softwareentwicklung nennen wir sie keine Schränke. Wir nennen sie Repositories.

Github ist ein Cloud-Hosting-Service, in dem diese Projekte gespeichert werden. Um ein GitHub-Konto zu erstellen, müssen Sie zu gehen Anmeldeseite um ein Konto zu erstellen.

Wir werden in diesem Artikel nicht auf die verschiedenen Aspekte von GitHub eingehen, das Konto erstellen und Ihre E-Mail-Adresse bestätigen. Wenn Sie fertig sind, kehren wir hierher zurück.

Git konfigurieren

Um git nutzen zu können, müssen wir es mit unseren Details konfigurieren. Einer der Vorteile der Verwendung von git besteht darin, dass nicht nur die Änderungen verfolgt werden, die im Laufe der Zeit vorgenommen wurden, sondern auch, wer die Änderungen vorgenommen hat.

Dazu muss es mit Ihren Daten konfiguriert werden. Dazu müssen Sie Ihr Terminal öffnen.

git config --global color.ui true
git config --global user.name "YOUR NAME"
git config --global user.email "YOUR@EMAIL.com"

Die erste setzt die UI-Farbe für die Ausgabe von git auf true, während die anderen den Namen und die E-Mail-Adresse des Benutzers festlegen, der Sie sind. Sie müssen also Ihren Namen und Ihre E-Mail-Adresse in die Angebote eingeben. Ich schlage vor, Sie verwenden den Benutzernamen, den Sie zum Erstellen Ihres GitHub-Kontos verwendet haben.

Als nächstes generieren wir einen SSH-Schlüssel.

SSH-Schlüssel werden zur Authentifizierung verwendet und enthalten zwei öffentliche und private Schlüssel. Wobei ein Schlüssel (der öffentliche Schlüssel) zum Verschlüsseln einer Nachricht und der andere zum Entschlüsseln der Nachricht verwendet wird. Sie können sich auch mit Ihrem Benutzernamen und Passwort bei Ihrem GitHub-Konto anmelden. Eine andere Möglichkeit, wie GitHub Benutzer authentifiziert, ist die Verwendung von SSH-Schlüsseln.

Um einen zu generieren, müssen Sie den folgenden Befehl eingeben:

ssh-keygen -t rsa -C "YOUR@EMAIL.com"

Denken Sie daran, Ihre E-Mail-Adresse zu verwenden. Sie werden nach einem Speicherort für den Schlüssel gefragt. Sie können die Standardeinstellung auswählen, indem Sie die Eingabetaste drücken. Sie werden auch nach einer optionalen Passphrase gefragt, um den Schlüssel sicher zu machen, und Sie können diese überspringen, wenn Sie möchten. Am Ende wird der Schlüssel generiert.

Als Nächstes müssen Sie den generierten Schlüssel kopieren. Sie können den Schlüssel erhalten, indem Sie diesen Befehl ausführen

cat ~/.ssh/id_rsa.pub

Kopieren Sie es und klicken Sie auf hierKlicken Sie dann auf die Schaltfläche Neuer SSH-Schlüssel, fügen Sie den kopierten Schlüssel ein, geben Sie einen Titel ein und speichern Sie ihn. Für den Titel können Sie sich für das Gerät entscheiden, das Sie gerade verwenden. Beispiel; Macbook Pro.

Um zu bestätigen, dass es funktioniert hat, gehen Sie zu Ihrem Terminal und geben Sie diesen Befehl ein.

ssh -T git@github.com

Es sollte eine Antwort wie diese geben.

Hallo Verwandter! Sie haben sich erfolgreich authentifiziert, aber GitHub bietet keinen Shell-Zugriff.

Fazit

Jetzt wissen Sie, was ein Open-Source-Projekt ist und wie Versionskontrolle und Git in das Bild passen. Denken Sie daran, dass git eine Art Versionskontrollsystem ist, das es Entwicklern ermöglicht, Code zu einem Projekt beizutragen. Das Projekt kann dann auf einer Cloud-Hosting-Plattform wie GitHub gehostet werden.

Mit diesem Verständnis wird der nächste Schritt darin bestehen, zu lernen, wie Sie mit git Ihr Projekt verwalten.

Danke an unsere Sponsoren
Weitere großartige Lektüre zum Thema Entwicklung
Treiben Sie Ihr Geschäft an
Einige der Tools und Dienste, die Ihr Unternehmen beim Wachstum unterstützen.
  • Invicti verwendet das Proof-Based Scanning™, um die identifizierten Schwachstellen automatisch zu verifizieren und innerhalb weniger Stunden umsetzbare Ergebnisse zu generieren.
    Versuchen Sie es mit Invicti
  • Web-Scraping, Wohn-Proxy, Proxy-Manager, Web-Unlocker, Suchmaschinen-Crawler und alles, was Sie zum Sammeln von Webdaten benötigen.
    Versuchen Sie es mit Brightdata
  • Semrush ist eine All-in-One-Lösung für digitales Marketing mit mehr als 50 Tools in den Bereichen SEO, Social Media und Content-Marketing.
    Versuchen Sie es mit Semrush
  • Intruder ist ein Online-Schwachstellenscanner, der Cyber-Sicherheitslücken in Ihrer Infrastruktur findet, um kostspielige Datenschutzverletzungen zu vermeiden.
    MIT DER INTELLIGENTEN SCHADENKALKULATION VON Intruder