Was ist Github?

Einfach gesagt, GitHub ist ein "Hub", wo Menschen an einer Vielzahl von Dokumenten zusammenarbeiten können. Obwohl GitHub von Word-Dokumenten bis hin zu Excel-Tabellen funktioniert, wird es am häufigsten von Entwicklern verwendet, die Code gemeinsam bearbeiten möchten. GitHub ermöglicht Entwicklern den Zugriff auf Git, ein Versionskontrollsystem (VCS), das speziell auf die Programmierung von Projekten zugeschnitten ist. Wir haben uns etwas Zeit genommen, um Git zu erklären und wie GitHub das kollaborative Programmieren revolutioniert hat.

Was ist Git?

Erinnern Sie sich daran, in den Tagen vor Google Docs an Berichten von Highschool-Gruppen mitzuarbeiten? Sie würden den Bericht per E-Mail versenden und sicherstellen, dass alle ihren Beitrag geleistet haben. Manchmal werden Sie Änderungen an Ihrem Beitrag vornehmen und eine aktualisierte Kopie per E-Mail versenden. Es dauerte nicht lange, da waren ungefähr drei bis fünf Exemplare im Umlauf, die jeweils einige, aber nicht alle der letzten Bearbeitungen enthielten. Schließlich würde einer von Ihnen die berauschende Aufgabe übernehmen, alle Versionen auf ein einziges aktuelles Dokument zu reduzieren.

Schließlich würde Google Docs die Zusammenarbeit bei Dokumenten um das Tausendfache erleichtern und es Ihnen ermöglichen, innerhalb eines einzigen Systems an demselben Dokument zu arbeiten und Aktualisierungen zu verfolgen. Google ist, wie Git, ein Versionskontrollsystem. Es wurde entwickelt, um Aktualisierungen zu verfolgen und zusammenzuführen, wodurch die Zusammenarbeit in einem einzelnen Projekt erleichtert wird.

Git ist ein VCS, das von Linus Trovalds, dem Erfinder von Linux, entwickelt wurde. Sie wissen also, dass es entwicklerfreundlich sein wird. Tatsächlich ist es entwicklerfreundlich auf Kosten anderer Dateitypen. Statt Echtzeit-Updates wie Googledocs oder GitHubs Vorgänger in der Programmierbranche zuzulassen, müssen die Benutzer eine Vollversion des Projekts herunterladen und lokal bearbeiten. Sie laden dann ihr Update hoch. Infolgedessen gibt es zahlreiche "aktualisierte" Dokumente, die im System verfolgt werden.

Das sollte abschreckend klingen, wenn Sie in PowerPoint oder Word zusammenarbeiten möchten. Aber es ist ideal für Programmierer. Schließlich könnten zu viele Köche, die Code in demselben Dokument bearbeiten, die Integrität des Codes erheblich beeinträchtigen. Darüber hinaus können Änderungen an einem Ort Auswirkungen auf die Codierung eines anderen Teils haben. Wenn einzelne Entwickler nicht wissen, was ihre Kollegen tun, könnte dies Verwirrung und eine mögliche Katastrophe für den Code bedeuten.

Stattdessen kann jeder Entwickler mit einer "leeren Arbeitsfläche" der vorhandenen Hauptversion des Projekts arbeiten. Sie laden geänderte Versionen in die "Staging-Umgebung" hoch. Von dort aus können Änderungen an das Endprodukt "übergeben" werden. Nachdem Änderungen vorgenommen wurden, sind sie Teil des Hauptcodes, der für zukünftige Änderungen heruntergeladen wird. Auf diese Weise erleichtert Git das Anzeigen, Akzeptieren, Ablehnen und Zurücksetzen von Änderungen und schützt damit sensiblen Code vor einer Katastrophe.

GitHub-Funktionen

GitHub ist ein "Hub" für die Arbeit mit dem Git VCS-Format. Es bietet eine Vielzahl von Funktionen, die das Leben von Entwicklern erleichtern.

  • Repository - Im Allgemeinen "Repo" genannt, hier werden alle aktualisierten Versionen (und die primäre Version) eines Projekts gespeichert. Dies ist Ihre Bühne für das Projekt. Jedes Repo hat eine eindeutige URL für den einfachen Zugriff.
  • Forking - Wenn Entwickler kein privates Repository bezahlen, kann ihr Projekt von allen anderen Mitgliedern der GitHub-Community angezeigt werden. Wenn diese Mitglieder meinen, sie könnten einen wertvollen Beitrag leisten, können sie ein neues Projekt (Repository) von Ihnen erstellen. Dies wird "Forking eines Repos" genannt.
  • Pull Request - Nach einem Repo-Vorgang und Änderungen am vorhandenen Code können GitHub-Benutzer die Entwickler des ursprünglichen Repositorys einladen, die Änderungen zu sehen.
  • Zusammenführen - Wenn Sie die Änderungen bevorzugen, die jemand nach der Abzweigung Ihres Repositorys vorgenommen hat, können Sie diese Änderungen akzeptieren und sie mit Ihrem vorhandenen Repository zusammenführen.
  • Changelogs - Damit können Entwickler, die an einem einzelnen Projekt arbeiten, alle Änderungen sehen, wer sie erstellt hat und wann.
  • Networking - GitHub erleichtert es angehenden Entwicklern, gesehen zu werden. Jeder Benutzer als Profil zeigt Projekte, an denen er gearbeitet hat, und jede Art von Forking, die er gemacht hat. Wenn Sie eine Pull-Anfrage senden, können die von Ihnen eingereichten Entwickler Ihr Profil ansehen. Dies sagt ihnen ein wenig über Ihr Fachwissen und kann darüber informieren, ob sie die Änderungen zusammenführen oder nicht.

Die Zukunft der Programmierung

Gabelung gilt als das Flaggschiff von GitHub. Indem sie es Programmierern erleichtern, bemerkt zu werden, ebnen sie das Spielfeld. Darüber hinaus erleichtert der soziale und kollaborative Charakter der Plattform kleineren Projekten das Erkennen und die Herstellung.

Siehe Auch