github tutorial developers how use github
Dieses GitHub-Tutorial erklärt, was GitHub ist und wie man eine Repository-, Branch & Pull-Anfrage erstellt. Es enthält Branchenschutzregeln und Konfliktlösung:
Was ist GitHub?
GitHub ist ein Cloud-Dienst, mit dem Entwickler ihren Quellcode speichern und verwalten sowie alle Änderungen am Quellcode verfolgen und steuern können.
In einfachen Worten, GitHub ist für Entwickler gedacht, bei denen sie das Projekt verwalten, den Quellcode hosten und auch überprüfen können. Wir werden all dies in dieser Reihe untersuchen.
Liste der Tutorials in dieser GitHub-Reihe:
Tutorial Nr. 1: GitHub Tutorial für Entwickler | Verwendung von GitHub (Dieses Tutorial)
Tutorial # 2: GitHub-Projekte, Teams, Fork & Wiki zum Dokumentieren von Projekten
Tutorial # 3: Erweiterte Git-Befehle und GitHub-Integrations-Tutorial
Tutorial # 4: GitHub REST API Tutorial - REST API Unterstützung in GitHub
Tutorial Nr. 5: GitHub Desktop Tutorial - Arbeiten Sie mit GitHub von Ihrem Desktop aus zusammen
Tutorial # 6: TortoiseGit Tutorial - Verwendung von TortoiseGit zur Versionskontrolle
Was du lernen wirst:
Was ist Git?
Git ist ein Open Source-Versionskontrollsystem, bei dem der gesamte Quellcode auf dem Computer des Entwicklers verfügbar ist. Git ist auch ein Client und ein verteiltes Versionskontrollsystem (DVCS), mit dem Sie verzweigen und zusammenführen können.
Erste Schritte mit GitHub
Um mit GitHub zu beginnen, führen wir die folgenden Schritte aus.
- Erstellen Sie ein Repository, um Projekte zu organisieren.
- Erstellen Sie einen Zweig
- Nehmen Sie Änderungen an der Datei vor und schreiben Sie sie fest.
- Erstellen Sie eine Pull-Anforderung, um Inhalte zusammenzuführen.
- Zweig schützen
Im zweiten Teil der Serie werden wir uns auch mit den anderen Funktionen von GitHub befassen, z. B. Organisation erstellen, Teams, Probleme, Meilensteine, Gabeln, Veröffentlichungen und Wikis.
Erstellen Sie ein GitHub-Repository
Ein GitHub-Repository enthält die Artefakte des Projekts wie Quellcode, Dokumente, Bilder usw. Wir erstellen und verwenden ein Demo-Repository, um alle oben genannten Schritte auszuführen.
Loggen Sie sich bei Github.com und ein Erstellen Sie ein neues Repository . Klicke auf das Neu Taste.
Fügen Sie die folgenden Repo-Details wie gezeigt hinzu und klicken Sie auf Repository erstellen . Stellen Sie den Zugriff auf Privat oder Öffentlich ein. Es ist besser, es öffentlich zu machen, da nur wenige Funktionen von diesem Zugriff abhängig sind.
Hinweis: Der Benutzer, der das Repository erstellt, ist der Eigentümer des GitHub-Repositorys.
Das Repository wird mit einer README-Datei erstellt.
Hinzufügen von Collaborators zum GitHub-Repository
Wir möchten, dass das Team an diesem Repository arbeitet. Dazu müssen wir die Mitarbeiter einladen, am Repository zu arbeiten. Um Mitarbeiter hinzuzufügen, rufen Sie die Hauptseite des Repositorys auf und klicken Sie auf die Einstellungen Symbol.
Klicke auf Mitarbeiter Klicken Sie im linken Bereich auf die Mitarbeiter, die über ein Github-Konto verfügen. Eine Einladung würde gesendet und die Mitarbeiter müssten die Einladung annehmen.
Mitarbeiter werden wie unten gezeigt hinzugefügt. Später in diesem Tutorial werden wir sehen, wie die Collaborators als Prüfer für die Pull-Anforderung hinzugefügt werden, die zum Zusammenführen des Codes erstellt wurde.
Durchführen eines Basic C. ommit
Öffnen Sie die README-Datei und führen Sie ein grundlegendes Commit durch. Klicke auf das Symbol bearbeiten um die Datei zu ändern.
Ändern Sie die Datei, fügen Sie einen Kommentar hinzu und klicken Sie auf Verpflichten .
Die Datei wird in das Github-Repository übernommen (Änderungen werden gespeichert).
Es werden nur wenige Vorgänge zum Erstellen von Ordnern und Dateien im Repository angezeigt.
So erstellen Sie den Ordner und eine Datei in: Klicke auf das Neue Datei erstellen Schaltfläche auf Repository-Ebene. Geben Sie den Namen des Verzeichnisses gefolgt von / und den Namen der Datei wie unten gezeigt ein.
Klicke auf Verpflichten ganz unten. Der Ordner und die Datei werden wie gezeigt erstellt. Somit werden die Dateien und Ordner auf dem erstellt Meister Zweig, der der Hauptintegrationszweig ist und in dem hauptsächlich Softwareversionen erstellt werden können.
Die Entwickler arbeiten normalerweise an der ihnen zugewiesenen Aufgabe in einem separaten Zweig und führen die Änderungen zum Hauptzweig zusammen. Zum Beispiel, Zweige können zur Entwicklung von Features oder zur Behebung von Fehlern oder zur Bearbeitung von Verbesserungen usw. erstellt werden. Durch das Erstellen eines Zweigs wird die Arbeit isoliert, ohne die anderen Zweige zu stören.
Im nächsten Schritt können wir untersuchen, wie die Zweige erstellt und Pull-Anforderungen definiert werden können, um den Code zu überprüfen und in den Hauptzweig einzufügen.
Eine Datei verschieben
Führen Sie die folgenden Schritte aus, um eine Datei in einen anderen Ordner zu verschieben. Zum Beispiel, um die Datei rules.txt in einen Dokumentordner zu verschieben. Klicken Sie auf die Datei.
Klicken Sie auf das Symbol, um die Datei zu bearbeiten.
Fügen Sie den Pfad hinzu doc / vor der Datei rules.txt . Klicke auf Änderungen festschreiben.
Der Pfad wird jetzt aktualisiert.
Erstellen eines GitHub-Zweigs
Gehen Sie zur Hauptseite des Repositorys und geben Sie ein, um eine zu erstellen Merkmal Zweig wie gezeigt. Klicke auf Zweig erstellen.
Wir sind jetzt in der Merkmal Ast. Die Dateien sind die gleichen. Wir werden nun einige Änderungen an den Dateien in der vornehmen Merkmal Verzweigen Sie und erstellen Sie eine Pull-Anforderung, um die Änderungen zu überprüfen und den Code in den Code einzufügen Meister Ast.
Nehmen Sie Änderungen an den Dateien im Feature-Zweig vor.
Öffnen Sie die Java-Datei im Ordner Src, fügen Sie Code hinzu und übernehmen Sie die Änderung.
Erstellen Sie eine GitHub-Pull-Anforderung
Im vorherigen Abschnitt haben wir einen Zweig erstellt Merkmal und nahm einige Änderungen an einer Datei vor. Die Änderungen sind nicht in der Meister Ast. Dazu müssen wir eine Pull-Anfrage erstellen, mit der der Benutzer bestimmte Änderungen vorschlägt, die überprüft und in die Datei eingefügt werden sollen Meister Ast.
Das Erstellen einer Pull-Anforderung zeigt die Unterschiede zwischen dem Quell- und dem Zielzweig an und ist erforderlich, um etwaige Konflikte zu lösen.
Klicke auf Compare & Pull Request auf der Hauptseite des Repositorys.
Sie können sehen, dass die Änderungen in beiden Zweigen zusammengeführt werden können. Klicke auf Pull-Anfrage erstellen.
Klicke auf Pull-Anforderung zusammenführen und Bestätigen um die Zusammenführung abzuschließen.
Änderungen werden erfolgreich in die Meister Ast. Unsere erste Pull-Anfrage wurde erfolgreich abgeschlossen.
Weisen Sie Prüfer Pull-Anforderungen und Codeüberprüfung zu
Github hat eine gute Funktion zur Verwendung einer CODEOWNERS-Datei, in der wir die für den Quellcode verantwortlichen Personen im Repository auswählen können. Repository-Besitzer können diese Datei erstellen, und alle in der Datei definierten Benutzer werden standardmäßig zur Überprüfung während der Erstellung der Pull-Anforderung angefordert.
Um diese Funktion nutzen zu können, müssen Sie die GitHub Pro-Version verwenden oder das Repository öffentlich machen.
Erstellen Sie diese Datei im Stammverzeichnis des Repositorys im folgenden Format und schreiben Sie die Datei fest.
* @Benutzername oder @orgname oder @teamname
* * bedeutet in erster Linie alle Dateien im Repo. Sie können auch bestimmte Erweiterungen wie * .java oder * .js usw. angeben. Den in der Datei definierten Benutzern wird automatisch eine Überprüfungsanforderung gesendet. Wenn die CODEOWNERS-Datei definiert ist, müssen Sie die Prüfer nicht explizit manuell hinzufügen, und Sie können flexibler auswählen, welche Dateien überprüft werden sollen.
Zurück in Merkmal branch nimmt eine kleine Änderung an der Java-Datei vor und erstellt eine Pull-Anfrage. Weisen Sie im Bildschirm Pull Request auf der rechten Seite einen Prüfer zu. Klicke auf Pull-Anfrage erstellen.
Auf dem obigen Bildschirm können Sie sehen, dass die Prüfer manuell zugewiesen werden können, die Prüfer jedoch in der CODEOWNERS-Datei definiert sind, die automatisch eine Anforderung zur Überprüfung der Codeänderungen erhält.
Wie auch immer, jetzt lass uns Anmeldung als Prüfer und genehmigen die Änderungen. Melden Sie sich als Benutzer vniranjan2512 an, um die Änderungen zu genehmigen.
Es gibt eine Aufforderung zum Genehmigen / Ablehnen der Änderungen unter Pull-Anfrage.
Klicken Sie auf Pull Request und Fügen Sie Ihre Bewertung hinzu.
Sie können auf die klicken + Signieren und Hinzufügen von Überprüfungskommentaren für die Codezeile Hinzugefügt / Geändert / Gelöscht auf dem angezeigten Bildschirm.
Klicke auf Starten Sie eine Überprüfung.
Klicke auf Beenden Sie Ihre Überprüfung. Genehmigen Sie wie gezeigt und Bewertung abschicken .
Als ursprünglicher Benutzer, der eine Pull-Anfrage gestellt hat, können Sie einen Kommentar hinzufügen und die Konversation auflösen oder schließen.
Die Merge-Pull-Anforderung kann jetzt abgeschlossen werden.
Die Änderungen werden erfolgreich in die Meister Zweigstelle poste die Überprüfung und füge die Pull-Anfrage zusammen.
Zusammenfassend haben wir zu diesem Zeitpunkt gesehen, dass Entwickler an der Merkmal Verzweigen Sie und lösen Sie dann eine Pull-Anforderung aus, um die Änderungen an der zusammenzuführen Meister Ast. Das Obige war ein Szenario, in dem es keine Konflikte gab. Im nächsten Abschnitt erfahren Sie, wie Sie Konflikte manuell lösen können, wenn die Dateien in mehreren Zweigen geändert werden.
Konflikte lösen
Es ist möglich, dass dieselben Dateien in mehreren Zweigen geändert werden. In diesem Fall würde es zu Konflikten kommen, die durch die ausgelöste Pull-Anfrage gelöst werden müssen.
Zum Beispiel, Nehmen Sie Änderungen an der Java-Datei in beiden vor Meister und Merkmal verzweigt und eine Pull-Anfrage auslösen.
Die angezeigte Pull-Anforderungsnachricht lautet, dass die Änderungen nicht automatisch zusammengeführt werden können. Daher müssen die Konflikte gelöst werden. Fahren Sie fort, um eine Pull-Anforderung zu erstellen.
Sobald die Pull-Anfrage ausgelöst wurde, müssen die Konflikte durch Klicken auf die Lösung gelöst werden Konflikte lösen Taste.
Entfernen Sie die Markierungen, die Konflikte im Wesentlichen manuell lösen, und klicken Sie auf als gelöst markieren und Merge festschreiben.
Die endgültige Ansicht der Datei nach dem Entfernen der Markierungen.
Die Zusammenführungs-Pull-Anforderung kann abgeschlossen werden. Das Meister und Merkmal Zweige werden jetzt identisch sein.
Auf dem obigen Bildschirm können Sie weiterhin sehen, dass die Überprüfung angefordert, aber nicht vorgeschrieben ist. Im nächsten Abschnitt werden wir uns mit den Zweigschutzregeln befassen, nach denen der Eigentümer des Repositorys zwingend eine Überprüfung anfordern und auch die schützen kann Meister Verzweigen Sie vom direkten Festschreiben, jedoch nur über eine Pull-Anforderung.
Branchenschutzregeln
In den vorherigen Abschnitten haben wir uns mit Github Pull Requests befasst und auch um Überprüfungen gebeten, die nicht vorgeschrieben oder optional waren. In typischen Codeszenarien für Projektszenarien sind die Überprüfungen ein Muss und Teil des Entwicklungsprozesses.
Mal sehen, wie dies durchgesetzt werden kann.
In github.com kann diese Funktion nur für öffentliche Repositorys oder mit der Github Pro-Version festgelegt werden. Gehen Sie auf der Hauptseite des Repositorys zu die Einstellungen und klicken Sie auf die Geäst Kategorie auf der linken Seite.
Klicke auf Regel hinzufügen unter dem Zweigschutzregeln. Die Regel fügte Anforderungen für obligatorische Überprüfungen von Pull-Anforderungen von den Codebesitzern hinzu, bevor sie für die zusammengeführt wurden Meister Ast.
Dadurch wird auch sichergestellt, dass die Hauptzweig ist geschützt und es können keine direkten Festschreibungen in diesem Zweig vorgenommen werden. Sie können nur über die Pull-Anforderungen nach einer gründlichen Überprüfung festgeschrieben werden. Diese Einstellung wird vom Repository-Eigentümer festgelegt.
Ein großartiges Feature !!!
Klicke auf Erstellen einmal getan. Nehmen Sie zum Testen dieses Szenarios eine Änderung an einer Datei in der vor Merkmal verzweigen und eine Pull-Anfrage erstellen.
Der folgende Bildschirm zeigt, dass die Codebesitzer zwingend eine Überprüfung benötigen.
Veröffentlichen Sie die Bewertung von den Code-Eigentümern. Die Pull-Anforderung kann zusammengeführt werden.
Wenn Sie als Mitarbeiter des Repositorys aufgrund der erstellten Regeln für geschützte Zweige Änderungen an einer der Dateien vornehmen, können Sie sich nicht direkt auf den Hauptzweig festlegen, sondern erst über eine Pull-Anforderung, nachdem Sie einen Zweig wie gezeigt erstellt haben unten.
Übertragen eines Repositorys auf ein anderes Benutzerkonto
Normalerweise hat ein persönliches Benutzer-Repository einen einzigen Eigentümer und alle anderen sind Mitarbeiter. In dem Sinne, dass Sie nicht mehrere Eigentümer in einem Benutzerkonto-Repository haben können. Das Eigentum kann jedoch auf ein anderes Benutzerkonto übertragen werden. Wenn dies erledigt ist, wird der ursprüngliche Repository-Eigentümer automatisch zu Mitarbeitern im neuen Benutzerkonto-Repository.
Der neue Eigentümer kann dann mit der Verwaltung der Artefakte, Probleme, Pull-Anforderungen, Projekte, Releases und Einstellungen beginnen.
Wenn Befehle wie 'Git-Klon' oder 'Git-Push' im lokalen Repository ausgeführt werden, werden die Befehle normalerweise zum neuen Repository umgeleitet. Wenn Sie jedoch den Befehl 'git remote -v' ausführen, wird weiterhin die ursprüngliche Repository-URL angezeigt. Um Verwirrung beim Wechsel zur neuen Remote-URL zu vermeiden, senden Sie die Übertragung des Repositorys mit dem Befehl 'git remote set-url'.
Um ein Repository zu übertragen, gehen Sie zur Registerkarte Einstellungen des Repositorys und unter Optionen? Gefahrenzone klicken auf Transfer
Geben Sie den Repository-Namen und das neue Benutzerkonto ein, auf das das Eigentum übertragen werden muss.
Klicken Sie auf Ich verstehe, übertragen Sie dieses Repository
Sie sollten eine Meldung sehen, dass das Repository an den neuen Eigentümer übertragen wird.
Eine E-Mail wird an den ursprünglichen Repository-Eigentümer gesendet, um die Übertragung zu genehmigen. Sobald die Übertragung genehmigt wurde, wird das Repository an den neuen Eigentümer übertragen und der ursprüngliche Repository-Eigentümer wird als Mitarbeiter hinzugefügt.
Legen Sie nun die neue Repository-URL auf dem Computer fest, auf dem das alte Repository geklont wurde. Die folgenden Befehle müssen auf allen Computern festgelegt werden, auf denen das alte Repository geklont wurde.
Alle Pull-Anfragen, Probleme, Wiki werden übertragen. Issue-Zuordnungen bleiben erhalten.
Einige nützliche Git-Befehle
Es gibt einige der grundlegenden Git-Befehle, die zunächst auf Ihrem lokalen Computer konfiguriert werden müssen, sobald der Git-Client auf Ihrem Linux- oder Windows-Computer installiert ist. Entwickler arbeiten lokal ohne Verbindung zum Repository auf GitHub an der vollständigen Kopie des auf GitHub verfügbaren Quellcodes und synchronisieren mit diesem.
Legen Sie zunächst Ihren Benutzernamen und Ihre E-Mail-Adresse fest, um sicherzustellen, dass alle von Ihnen verwendeten Commits diese Informationen verwenden.
git config –global user.name “UserName”
git config –global user.email “myemail@myemail.com”
Wenn Sie während des Festschreibens eine Nachricht hinzufügen müssen, können Sie auch den dafür benötigten Editor konfigurieren.
Verwendung von C ++ in der realen Welt
git config –global core.editor notepad
Rufen Sie eine Liste aller eingestellten Konfigurationswerte ab.
git config –list
Manchmal haben Organisationen Proxyserver, um eine Verbindung zum Internet herzustellen. In diesem Fall müssen Sie einen Proxyserver und eine Portnummer angeben, um auf alle Repositorys auf GitHub zugreifen zu können.
git config –global http.proxyhttp: // Benutzername: Passwort @ proxyserver: port
Klonen oder erstellen Sie eine lokale Kopie des Repositorys. Rufen Sie die Klon-URL des Repositorys in GitHub ab und führen Sie den Befehl git aus.
Fazit
In diesem Tutorial haben wir gesehen, wie ein Entwickler mit der Arbeit an GitHub beginnen kann, direkt vom Erstellen eines GitHub-Repositorys, einer Verzweigung, einer Pull-Anforderung, dem Schützen einer Verzweigung und einigen grundlegenden Git-Befehlen.
In unserem kommenden Tutorial werden wir die anderen Funktionen von GitHub hauptsächlich zum Erstellen von Organisationen, Teams, zum Verzweigen eines Repositorys, zum Erstellen von Problemen, Meilensteinen und zum Verknüpfen mit Pull-Anforderungen, Wikis und deren Verwendung sowie einigen anderen nützlichen erweiterten Git-Befehlen sehen an die Entwickler.
Literatur-Empfehlungen
- Java Reflection Tutorial mit Beispielen
- Git vs GitHub: Erforschen Sie die Unterschiede anhand von Beispielen
- Python DateTime Tutorial mit Beispielen
- Selen-Integration mit GitHub unter Verwendung von Eclipse
- Eine kurze SoapUI-Anleitung zum Speichern von Anforderungs- und Antwortdaten in einer Datei - SoapUI Tutorial Nr. 15
- Bugzilla Tutorial: Praktisches Tutorial zum Fehlermanagement-Tool
- 20+ MongoDB Tutorial für Anfänger: Kostenloser MongoDB Kurs
- MongoDB Sharding Tutorial mit Beispiel