Was ist GitHub und wofür wird es verwendet?

GitHub ist eine Website und ein Service, von dem wir ständig hören, wie Geeks schwärmen, aber viele Leute verstehen nicht wirklich, was es tut. Möchten Sie wissen, worum es im GitHub-Trubel geht? Lesen Sie weiter, um es herauszufinden.

Das "Git" in GitHub

VERBINDUNG: Versionsverfolgung mit Subversion (SVN) für Anfänger

Um GitHub zu verstehen, müssen Sie zuerst Git verstehen. Git ist ein Open-Source-Versionskontrollsystem, das von Linus Torvalds gestartet wurde - der gleichen Person, die Linux erstellt hat. Git ähnelt anderen Versionskontrollsystemen - Subversion, CVS und Mercurial, um nur einige zu nennen.

Git ist also ein Versionskontrollsystem, aber was bedeutet das? Wenn Entwickler etwas erstellen (z. B. eine App), nehmen sie ständige Änderungen am Code vor und veröffentlichen neue Versionen bis und nach der ersten offiziellen Version (ohne Beta).

Versionskontrollsysteme halten diese Revisionen aufrecht und speichern die Änderungen in einem zentralen Repository. Auf diese Weise können Entwickler problemlos zusammenarbeiten, da sie eine neue Version der Software herunterladen, Änderungen vornehmen und die neueste Version hochladen können. Jeder Entwickler kann diese neuen Änderungen sehen, herunterladen und dazu beitragen.

Ebenso können Personen, die nichts mit der Entwicklung eines Projekts zu tun haben, die Dateien herunterladen und verwenden. Die meisten Linux-Benutzer sollten mit diesem Prozess vertraut sein, da die Verwendung von Git, Subversion oder einer anderen ähnlichen Methode zum Herunterladen der erforderlichen Dateien ziemlich häufig ist - insbesondere zur Vorbereitung des Kompilierens eines Programms aus dem Quellcode (eine für Linux-Geeks übliche Praxis).

Git ist das bevorzugte Versionskontrollsystem der meisten Entwickler, da es gegenüber den anderen verfügbaren Systemen mehrere Vorteile bietet. Es speichert Dateiänderungen effizienter und stellt die Dateiintegrität besser sicher. Wenn Sie die Details kennen möchten, finden Sie auf der Seite Git-Grundlagen eine ausführliche Erklärung zur Funktionsweise von Git.

Der "Hub" in GitHub

Wir haben festgestellt, dass Git ein Versionskontrollsystem ist, das ähnlich, aber besser ist als die vielen verfügbaren Alternativen. Was macht GitHub so besonders? Git ist ein Befehlszeilentool, aber das Zentrum, um das sich alles dreht, was mit Git zu tun hat, ist der Hub - GitHub.com -, an dem Entwickler ihre Projekte speichern und sich mit Gleichgesinnten vernetzen.

Lassen Sie uns einige der Hauptgründe erläutern, warum Geeks GitHub gerne verwenden, und dabei einige Begriffe lernen.

Repository

Ein Repository (normalerweise mit „Repo“ abgekürzt) ist ein Speicherort, an dem alle Dateien für ein bestimmtes Projekt gespeichert werden. Jedes Projekt hat ein eigenes Repo, auf das Sie mit einer eindeutigen URL zugreifen können.

Ein Repo gabeln

"Forking" ist, wenn Sie ein neues Projekt basierend auf einem anderen bereits vorhandenen Projekt erstellen. Dies ist eine erstaunliche Funktion, die die Weiterentwicklung von Programmen und anderen Projekten erheblich fördert. Wenn Sie auf GitHub ein Projekt finden, zu dem Sie beitragen möchten, können Sie das Repo aufteilen, die gewünschten Änderungen vornehmen und das überarbeitete Projekt als neues Repo freigeben. Wenn das ursprüngliche Repository, das Sie zum Erstellen Ihres neuen Projekts gegabelt haben, aktualisiert wird, können Sie diese Aktualisierungen problemlos zu Ihrer aktuellen Verzweigung hinzufügen.

Anfragen ziehen

Sie haben ein Repository gegabelt, das Projekt grundlegend überarbeitet und möchten, dass es von den ursprünglichen Entwicklern erkannt wird - möglicherweise sogar im offiziellen Projekt / Repository enthalten. Sie können dies tun, indem Sie eine Pull-Anfrage erstellen. Die Autoren des ursprünglichen Repositorys können Ihre Arbeit sehen und dann entscheiden, ob sie in das offizielle Projekt aufgenommen werden soll oder nicht. Wenn Sie eine Pull-Anfrage stellen, bietet GitHub ein perfektes Medium für die Kommunikation zwischen Ihnen und dem Betreuer des Hauptprojekts.

Soziales Netzwerk

Der Social-Networking-Aspekt von GitHub ist wahrscheinlich die leistungsstärkste Funktion, mit der Projekte mehr wachsen können als alle anderen angebotenen Funktionen. Jeder Benutzer auf GitHub hat sein eigenes Profil, das sich wie eine Art Lebenslauf verhält und Ihre früheren Arbeiten und Beiträge zu anderen Projekten über Pull-Anfragen anzeigt.

Projektrevisionen können öffentlich diskutiert werden, sodass eine Vielzahl von Experten Wissen einbringen und zusammenarbeiten kann, um ein Projekt voranzutreiben. Vor dem Aufkommen von GitHub müssten Entwickler, die an einem Beitrag zu einem Projekt interessiert sind, normalerweise eine Möglichkeit finden, die Autoren zu kontaktieren - wahrscheinlich per E-Mail - und sie dann davon überzeugen, dass ihnen vertraut werden kann und ihr Beitrag legitim ist.

Changelogs

Wenn mehrere Personen an einem Projekt zusammenarbeiten, ist es schwierig, Revisionen nachzuverfolgen - wer hat was, wann und wo diese Dateien gespeichert? GitHub behebt dieses Problem, indem es alle Änderungen verfolgt, die in das Repository übertragen wurden.

GitHub ist nicht nur für Entwickler

Bei all dem Gerede darüber, wie GitHub für Programmierer ideal ist, glauben Sie vielleicht, dass sie die einzigen sind, die es nützlich finden. Obwohl es viel seltener vorkommt, können Sie GitHub tatsächlich für alle Arten von Dateien verwenden. Wenn Sie beispielsweise ein Team haben, das ständig Änderungen an einem Word-Dokument vornimmt, können Sie GitHub als Versionskontrollsystem verwenden. Diese Praxis ist nicht üblich, da es in den meisten Fällen bessere Alternativen gibt, aber es ist etwas zu beachten.

Jetzt, da Sie wissen, worum es bei GitHub geht, sind Sie bereit, loszulegen? Besuchen Sie GitHub.com und lesen Sie nach der Anmeldung die Hilfeseiten.