Unterschied zwischen Git und GitHub

280

Ich habe Git kürzlich mit Eclipse ein neues Projekt hinzugefügt, sehe das Projekt jedoch nicht in meinem GitHub-Konto.

Warum haben sie dieselben Kontoinformationen und unterschiedliche Repositorys?

Sind Git und GitHub nicht dasselbe?

Luis Andrés García
quelle
Werfen
Sie
2
Mögliches Duplikat von
Grundlegendes zu

Antworten:

366

Git ist ein Revisionskontrollsystem, ein Tool zum Verwalten Ihres Quellcodeverlaufs.

GitHub ist ein Hosting-Service für Git-Repositories.

Sie sind also nicht dasselbe: Git ist das Tool , GitHub ist der Service für Projekte, die Git verwenden .

Um Ihren Code zu GitHub zu bringen, schauen Sie hier .

schlicht
quelle
22
Vor allem GitHub ist eine Folge der Existenz von Git und nicht der einzige Hosting-Service.
Jonas Schäfer
83
Auch Sie nicht haben , um einen Remote - Service wie Github zu verwenden , wenn alles , was Sie wollen , ist die Versionskontrolle - lokale git ist gut dafür. Remote-Repositorys dienen der Sicherung und Zusammenarbeit.
Thilo
3
Beachten Sie, dass Sie auf vielen Webservern wie webfaction vs heroku ein Remote-Git-Repository erstellen können. Es ist etwas schwieriger, diesen Github zu konfigurieren, aber für große Teams billiger.
Adrian Lopez
1
Schauen Sie sich diesen Vergleich an, um mehr über Git Hosting Services zu erfahren. git-tower.com/blog/git-hosting-services-compared
Junaid
Ich denke, die Verwendung der Wörter "Tool" und "Service" ist für Personen, die mit dem Thema nicht vertraut sind (dh für Personen, die diese Frage googeln), nicht eindeutig. Vielleicht "Git ist eine Technologie zum Verwalten von Quellcode, während GitHub eines von vielen Produkten ist, die Git als Service für Code bereitstellen, den Sie mit ihnen hosten."
Rashad Saleh
68

In der SVN-Analogie ersetzt Git SVN, während GitHub SourceForge: P ersetzt

Wenn Ihr Projekt neu ist, können Sie sich trotzdem auf Ihr lokales Git festlegen und später auf GitHub pushen . Sie müssen Ihr GitHub-Repo als 'Remote-Repository' in Ihrem Git-Setup hinzufügen.

Sie scheinen etwas für Eclipse-Benutzer zu haben: http://eclipse.github.com/

Andernfalls, wenn Sie neu bei Git sind: http://git-scm.com/book

Bakkal
quelle
Was ist die Alternative zur Verwendung eines Online-GITHUB?
Variable
@variable Du meinst so etwas wie ein lokales Git-Repository oder einen selbst gehosteten Git-Server wie GitLab?
Bakkal
65

Was ist Git :

"Git ist ein kostenloses und verteiltes Open Source- Versionskontrollsystem , mit dem alles von kleinen bis zu sehr großen Projekten schnell und effizient abgewickelt werden kann."

Git ist ein verteiltes Peer-Peer-Versionskontrollsystem. Jeder Knoten im Netzwerk ist ein Peer, der ganze Repositorys speichert, die auch als verteilte Backups mit mehreren Knoten fungieren können. Es gibt kein spezifisches Konzept für einen zentralen Server, obwohl Knoten kopflos oder "nackt" sein können und eine ähnliche Rolle wie der zentrale Server in zentralisierten Versionskontrollsystemen übernehmen.

Was ist GitHub :

"GitHub ist ein webbasierter Git-Repository- Hosting-Service , der alle Funktionen der verteilten Revisionskontrolle und des Quellcode-Managements (SCM) von Git bietet und eigene Funktionen hinzufügt."

Github bietet Zugriffskontrolle und verschiedene Funktionen für die Zusammenarbeit wie Wikis, Aufgabenverwaltung sowie Fehlerverfolgung und Funktionsanforderungen für jedes Projekt.

Sie benötigen GitHub nicht, um Git zu verwenden.

GitHub (und jedes andere lokale, entfernte oder gehostete System) können Peers in denselben verteilten versionierten Repositorys innerhalb eines einzelnen Projekts sein.

Mit Github können Sie:

  • Teilen Sie Ihre Repositories mit anderen.
  • Greifen Sie auf die Repositorys anderer Benutzer zu.
  • Speichern Sie Remote-Kopien Ihrer Repositorys (Github-Server) als Backup Ihrer lokalen Kopien.
BugShotGG
quelle
Sag mir, warum Git als verteilt bezeichnet wird. nur weil git store change im lokalen pc eingestellt ist? Bitte klären Sie diese verteilte Wortbedeutung, da ich neu in Git bin. danke
Mou
1
Benötigen Sie Git, um GitHub zu verwenden?
user3187724
25

Git - Das Versionskontroll-Tool, auf dem GitHub basiert.

GitHub - Unsere Firma und der Name unserer Software. Wir erstellen Software und Websites, mit denen Sie auf nette Weise mit Git-Repositories interagieren können.

GitHub.com - Die Website, auf der Sie sich anmelden, um Repositorys online anzuzeigen.

GitHub Desktop - Eine Anwendung, die Sie auf Ihrem Computer installieren können, um den lokalen Code mit GitHub.com zu synchronisieren.

Quelle: https://guides.github.com/introduction/getting-your-project-on-github/

user2340356
quelle
15

Es gibt eine Reihe offensichtlicher Unterschiede zwischen Git und GitHub .

Git selbst konzentriert sich wirklich auf die wesentlichen Aufgaben der Versionskontrolle. Es unterhält eine Geschichte zu begehen, es Sie Änderungen durch umkehren können zurückgesetzt und revert Befehle, und es erlaubt Ihnen zu teilen Code mit anderen Entwicklern durch Push- und Pull - Befehle. Ich denke, das sind die wesentlichen Funktionen, die jeder Entwickler von einem DVCS-Tool erwartet.

Git versus GitHub Vergleichstabelle

Kein Scope Creep mit Git

Aber eine Sache bei Git ist, dass es sich wirklich nur um Laser-Quellcode-Kontrolle handelt und sonst nichts. Das ist großartig, aber es bedeutet auch, dass dem Tool viele Funktionen fehlen, die Unternehmen wünschen. Beispielsweise gibt es keine integrierten Benutzerverwaltungsfunktionen, um zu authentifizieren, wer eine Verbindung herstellt und Code festschreibt. Die Integration mit Dingen wie Jira oder Jenkins bleibt den Entwicklern überlassen, um Dinge wie Hooks herauszufinden. Grundsätzlich gibt es eine Vielzahl von Stellen, an denen Funktionen integriert werden könnten. Hier kommen Organisationen wie GitHub und GitLab ins Spiel.

Zusätzliche GitHub-Funktionen

Der primäre Mehrwert von GitHub besteht darin, dass es eine Cloud-basierte Plattform für Git bietet. Das an sich ist großartig. Darüber hinaus bietet GitHub:

  • einfache Aufgabenverfolgung
  • eine GitHub Desktop App
  • Online-Dateibearbeitung
  • Zweigschutzregeln
  • Pull-Request-Funktionen
  • organisatorische Werkzeuge
  • Interaktionsgrenzen für Hitzköpfe
  • Emoji-Unterstützung !!! : octocat :: +1:

GitHub verleiht einem bereits beliebten DVCS-Tool wirklich Glanz und Verfeinerung.

Git- und GitHub-Konkurrenten

Manchmal, wenn es darum geht, zwischen Git und GitHub zu unterscheiden, finde ich es gut zu sehen, gegen wen sie antreten. Git konkurriert in einem Flugzeug mit Tools wie Mercurial, Subversion und RTC, während GitHub eher im SaaS-Bereich im Wettbewerb mit Cloud-Anbietern wie GitLab und Atlassians BitBucket steht.

Kein GitHub erforderlich

Eine Sache, an die ich die Leute immer gerne erinnere, ist, dass Sie GitHub, GitLab oder BitBucket nicht benötigen, um Git zu verwenden. Git wurde in was, 2005 veröffentlicht? GitHub kam erst 2007 oder 2008 auf den Markt, daher führten große Unternehmen eine verteilte Versionskontrolle mit Git durch, lange bevor die Cloud-Hosting-Anbieter hinzukamen. Git ist also für sich allein in Ordnung. Es ist kein Cloud-Hosting-Service erforderlich, um effektiv zu sein. Gleichzeitig schadet es aber nicht, einen PaaS-Anbieter zu haben.

Arbeiten mit GitHub Desktop

Übrigens, Sie haben die Nichtübereinstimmung zwischen den Repositorys in Ihrem GitHub-Konto und den Repos, die Sie lokal haben, erwähnt? Das ist verständlich. Bis Sie eine Verbindung hergestellt und einen Pull oder Fetch durchgeführt haben, weiß das lokale Git-Repo nichts über das entfernte GitHub-Repo. Trotzdem bietet GitHub ein Tool namens GitHub-Desktop , mit dem Sie von einem Desktop-Client aus eine Verbindung zu GitHub herstellen und problemlos lokale Git-Repos auf GitHub laden oder GitHub-Repos auf Ihren lokalen Computer laden können.

GitHub Desktop

Ich bin nicht sonderlich beeindruckt von dem Tool, denn sobald Sie Git kennen, sind diese Dinge in der Bash-Shell nicht so schwer zu tun, aber es ist eine Option.

Der Kampf zwischen Git und GitHub

Cameron McKenzie
quelle
9

Auf einfache Weise können wir unten den Unterschied zwischen Git und Git Hub und VSTS erkennen.

git : - Behandle git als Engine / Technologie, um die Quellversionskontrolle für unser Projekt zu erreichen. Im Gegensatz zu TFS (wieder eine zentralisierte Quellversionskontrolle) ist git eine verteilte Versionskontrolltechnologie. Das bedeutet, dass git eigentlich keinen Server benötigt. Durch die Git-Technologie können wir unseren eigenen lokalen Computer als Quellcode-Repository erstellen, für das nicht immer ein zentraler Server erforderlich ist (im großen Maßstab kann es einen Microsoft-Server geben, der unseren Projektquellcode pusht und beibehält). Bei der Versionskontrolle der Art SVN und TFS muss jedoch unbedingt ein Server zugeordnet werden.

Wenn ich beispielsweise ein freiberuflicher Entwickler bin und direkt an meinen Kunden berichte und kein anderer Entwickler beteiligt ist, muss ich die Versionskontrolle meines Codes beibehalten, um ein Rollback (eine beliebige Version) durchzuführen und meine Codes festzuschreiben, und das tue ich nicht Ich habe ein Budget, um einen Server zu erhalten, und ich habe keine Zeit, einen anderen Server auf meinem Computer als TFS-Server und TFS-Client zu installieren und zu verwenden. Der optimale Weg ist also, die Git-Engine zu installieren und meinen lokalen Computer als Repository für die Versionskontrolle durch Git zu verwenden.

GitHub : - Wie ich bereits sagte, ist Git eine Technologie und wird mit einigen Befehls- / Shell-Befehlen verwendet, dh Git hat nur keine Benutzeroberfläche. GitHub ist ein Online-Produkt oder ein Online-Repository, das Git-Technologie für seinen Prozess verwendet und Versionskontrollen zusammen mit anderen Funktionen wie Fehlerverfolgung, Projektmanagement, Support-Ticket-Management usw. durchführt. Mit anderen Worten, Git Hub ist ein Wrapper, der auf der Git-Technologie mit einer Benutzeroberfläche und anderen Funktionen anderer Drittanbieter basiert. Es handelt sich tatsächlich um ein Produkt, das jemandem oder einer Gruppe gehört, die auf der Git-Technologie basiert, da Git Open Source ist und nicht vermarktbar ist Produkt.

VSTS : - VSTS ist ein Microsoft-Produkt für das Online-Repository, das die Versionskontrolle der Quellversion beibehält und als Alternative zum Git-Hub behandelt werden kann. Seit seiner Unterstützung durch Microsoft unterstützt VSTS sowohl die Git-Technologie als auch TFS (TFVC-Team Foundation Versionskontrolle). Da TFS ein weiteres altes Microsoft-Produkt ist, um diese Versionskontrolle zu erreichen. Generell gehe ich davon aus, dass VSTS TFS schrittweise ausgeben wird, da Git die herausragende Technologie in diesem Bereich ist und Open Source ist.

Rinoy Ashokan
quelle
7

In reinem Englisch:

  1. Sie sind alle Quellcodeverwaltung, wie wir alle wissen.
  2. In einer Analogie, wenn Git ein eigenständiger Computer ist, dann ist GitHub ein Netzwerk von Computern, die über das Internet mit Schnickschnack verbunden sind.
  3. Wenn Sie also kein GitHub-Konto öffnen und VSC oder einen Editor ausdrücklich anweisen, GitHub zu verwenden, wird Ihr Quellcode dort oben angezeigt, andernfalls befinden sie sich nur hier unten - auf Ihrem lokalen Computer.
Jeb50
quelle
0

Git- Git ist eine Versionskontrollsoftware, die Sie auf Ihrem lokalen System installieren. Für eine Person, die alleine an einem Projekt arbeitet, erweist sich Git als hervorragende Software.

GitHub - Wie bereits erwähnt, ist Git ein Versionskontrollsystem, das Codeänderungen verfolgt, während GitHub ein webbasierter Git-Versionskontroll-Repository-Hosting-Service ist. Es bietet alle Funktionen der verteilten Versionskontrolle und des Quellcode-Managements (SCM) von Git und bietet einige seiner eigenen Funktionen.

Ankit Kumar Rajpoot
quelle
0

Einfach ausgedrückt, Git ist ein Versionskontrollsystem, mit dem Sie Ihren Quellcodeverlauf verwalten und verfolgen können. GitHub ist ein Cloud-basierter Hosting-Service, mit dem Sie Git-Repositorys verwalten können. Wenn Sie Open-Source-Projekte haben, die Git verwenden, hilft Ihnen GitHub, diese besser zu verwalten.

Dennis
quelle
-3

Github ist erforderlich, wenn Sie entwicklerübergreifend zusammenarbeiten möchten. Wenn Sie ein einzelner Mitwirkender sind, stellen Sie sicher, dass Sie Ihren Code regelmäßig sichern

TheFixer
quelle