[LINUX] Über die Beziehung zwischen Git und GitHub

Einführung

** Was ist Git ** Tool zum Verwalten der Quellcodeversion ** Was ist GitHub ** Webdienst, der Entwickler unterstützt, die Git verwenden

Git und GitHub sind stark und unterschiedlich, und nur weil Sie Git verwenden, heißt das nicht, dass Sie GitHub verwenden müssen. Wie später beschrieben wird, gibt es neben GitHub auch Git-Hosting-Dienste.

Geschichte und Zweckmäßigkeit der Geburt von Git

Wie wurde Git überhaupt geboren? Lassen Sie uns vor diesem Hintergrund die Bequemlichkeit von Git bestätigen.

Der Schöpfer von Git ist ** Linus Tobals , der das Linux-Betriebssystem erstellt hat. Zunächst verwendete er ein Versionsverwaltungssystem namens "BitKeeper" in der Linux-Kernel-Entwicklung. Aufgrund von Lizenzproblemen konnte BitKeeper nicht verwendet werden, daher suchte ich nach einem alternativen Dienst, aber keines der kostenlosen Versionsverwaltungssysteme konnte seine hohen Anforderungen erfüllen. Daher hat Herr Tobals selbst mit der Entwicklung begonnen, und was dort geboren wurde, ist " Git **". Was macht Git besser als herkömmliche Versionsverwaltungstools?

Das Tolle an Git ist, dass es sich um ein ** verteiltes Repository ** handelt. Traditionell gab es insgesamt nur ein Repository, aber Git hat zwei, "local" und "remote". Der Vorteil dieses dezentralen Systems besteht darin, dass jeder Entwickler bei mehreren Systementwicklungen den Quellcode schreibt und zum Repository hinzufügt. Je mehr Entwickler vorhanden sind, desto mehr ** werden dem Repository hinzugefügt. Inkonsistenzen ** erhöhen die Wahrscheinlichkeit.

Um solche Inkonsistenzen im Repository zu vermeiden, zeichnet jeder Entwickler die Änderungen im ** lokalen Repository ** auf seinem eigenen Computer auf und zeichnet dann die Änderungen im ** Remote-Repository ** auf, nachdem er die Gesamtsituation gesehen hat. Dies hat es bequemer gemacht.

Durch die beispiellose dezentrale Versionsverwaltung wurden die Bedenken, die wir bei herkömmlichen Verwaltungstools hatten, ausgeräumt und werden bis heute in der Entwicklung verwendet.

Was ist GitHub?

Das Wort Git erweckt den Eindruck, dass es sich um einen dedizierten Dienst handelt, es gibt jedoch auch andere Git-Hosting-Dienste wie diesen, und Sie müssen GitHub nicht verwenden.

GitHub kann die Versionsverwaltung mit Git in der Cloud durchführen und verfügt über eine Funktion, die die Verwendung von Git noch einfacher macht. Unter diesen verbessern die drei Funktionen ** "Fork", "Pull Request" und "Merge" ** den Komfort und werden von vielen Benutzern unterstützt.

--Fork: Sie können das Repository einer Person abrufen (kopieren) und ändern. --Pull Request: Eine Funktion, mit der Sie von anderen Mitgliedern Überprüfungen zu Änderungen des von Ihnen vorgenommenen Quellcodes anfordern können. --Merge: Einführung des Codes einer Person in Ihren eigenen Code.


"Fork", um den Code zu korrigieren und eine "Pull-Anfrage" an den Eigentümer zu richten. Der Eigentümer, der die "Pull-Anfrage" erhält, "führt" den Code zusammen.


GitHub ist auch als Ort für Social Coding bekannt, an dem Sie den Quellcode anderer sehen können. Dies erleichtert auch die Entwicklung in offenen Quellen wie die Teilnahme an der Entwicklung und das Feedback, was auch ein Vorteil von GitHub ist.

Typischer Git-Hosting-Service, der nicht von GitHub verwendet wird

Die ausgewählten Unterschiede umfassen den Unterschied im Hosting zwischen dem Webdiensttyp und dem Installationstyp, den Unterschied im entsprechenden VCS, dem kostenlosen privaten Repository und dem Gebührenformat.

Zusammenfassung

Git ist ein Versionsverwaltungstool mit dem Ziel, die Entwicklungseffizienz durch Dezentralisierung zu verbessern. GitHub ist ein Dienst, der es als Open Source verwendet, um den Komfort der Teamentwicklung zu verbessern und eine Community von Ingenieuren zu bilden.

Referenzartikel

ITmedia Enterprise https://www.itmedia.co.jp/enterprise/articles/0504/20/news075.html FERROWS https://job.fellow-s.co.jp/useful_info/feature_detail/Art-0488 Linix.com https://www.linux.com/

Recommended Posts

Über die Beziehung zwischen Git und GitHub
Die subtile Beziehung zwischen Gentoo und Pip
Über den Unterschied zwischen "==" und "is" in Python
Über den Unterschied zwischen PostgreSQL su und sudo
Untersuchung des Zusammenhangs zwischen Eisausgaben und Temperatur
Untersuchen Sie die Beziehung zwischen TensorFlow und Keras in der Übergangszeit
[Statistik] Lassen Sie uns die Beziehung zwischen der Normalverteilung und der Chi-Quadrat-Verteilung visualisieren.
Untersuchen Sie die Beziehung zwischen zwei Variablen (2)
Untersuchen Sie die Beziehung zwischen zwei Variablen (1)
Ich untersuchte die Beziehung zwischen Keras 'zustandsbehaftetem LSTM und verstecktem Zustand
Über _ und __
Beziehung zwischen Netfilter, Firewall, Iptables und Nftables
Was ist der Unterschied zwischen "pip" und "conda"?
Beziehung zwischen Firestore- und Go-Datentypkonvertierung
Über das Verhalten von copy, deepcopy und numpy.copy
Über den Test
Zusammenfassung der Unterschiede zwischen PHP und Python
Die Antwort von "1/2" unterscheidet sich zwischen Python2 und 3
Lassen Sie uns die Beziehung zwischen Durchschnittsgehalt und Industrie mit XBRL-Daten und Seaborn visualisieren! (7/10)
Über die Warteschlange
Was ist der Unterschied zwischen Unix und Linux?
Untersuchung der Beziehung zwischen Sprachvorverarbeitung und Transkriptionsgenauigkeit in der Google Cloud Speech API
Berücksichtigung des Unterschieds zwischen ROC-Kurve und PR-Kurve
Grober Unterschied zwischen Unicode und UTF-8 (und seinen Begleitern)
Versuchen Sie, die Beziehung zwischen Operatoren und speziellen Methoden aufzurufen, indem Sie eine numerische Methode aufrufen
Kann BERT den Unterschied zwischen "Ame (Süßigkeiten)" und "Ame (Regen)" verstehen?
Was ist der Unterschied zwischen usleep, nanosleep und clock_nanosleep?
Denken Sie an das Rack und WSGI der nächsten Generation
Ich habe die Datenzuordnung zwischen ArangoDB und Java untersucht
Visualisierung der Verbindung zwischen Malware und dem Callback-Server
Wie man Argparse benutzt und den Unterschied zwischen Optparse
Persönliche Hinweise zur Integration von vscode und anaconda
Vergleiche "log and infininity" mit Gauche (0.9.4) und Python (3.5.1)
Über Klasse und Instanz
Sortieren Sie die Beziehung zwischen Pitcher Masaru Yamamoto und jedem Team nach Janome und TF-IDF Cosine Similarity
Zwischen parametrisch und nicht parametrisch
Über Cumprod und Cummax
Informationen zur Entfaltungsfunktion
Über den Servicebefehl
Über die Verwirrungsmatrix
Über das Besuchermuster
Über Kreuzvalidierung und F-Wert
Die Beziehung zwischen Gehirnforschung und unbeaufsichtigtem Lernen. Maximieren Sie die Informationsmenge MNIST: Google Colabratory (PyTorch)
Was ist der Unterschied zwischen symbolischen und harten Links?
Verstehen Sie den Unterschied zwischen der kumulativen Zuordnung zu Variablen und der kumulativen Zuordnung zu Objekten
Finden Sie das meiste F-Wort-Commit unter Linux (Git und höher)
Ich habe versucht, die Unterschiede zwischen Java und Python aufzuzählen
Unterschied zwischen Vordergrundprozess und Hintergrundprozess, prinzipiell verstanden
Spielen Sie mit dem Passwortmechanismus von GitHub Webhook und Python
Beziehung zwischen gebunden / ungebunden und Anfangswert von Django2 Form