Schreibe deine eigenen Geschichten mit Git

Hallo allerseits 🙂 Bevor ich mit den Texten der Bestellliste fortfahre, möchte ich die Veröffentlichung von git 2.16 feiern, indem ich mich bei allen, die einen Patch gesendet haben, und bei jedem Benutzer bedanke. Insgesamt hatten wir zwischen Aktualisierungen und Korrekturen etwa 4000 Zeilen. Das spricht nicht besonders für meine erste Version, aber für Ihre Freundlichkeit. Danke! Jetzt werde ich Ihnen ein kleines Geheimnis verraten, bis jetzt gab es keine Zeit, in der ich mich nicht hingesetzt habe, um einen Artikel zu schreiben, und viel darüber nachgedacht habe. Normalerweise schreibe ich nur hintereinander, und dann nimmt die gute Eidechse die Freundlichkeit, meine Tippfehler zu korrigieren - also auch dank ihm.

Dies ist nicht das Beste, wenn wir über das Schreiben von Artikeln sprechen. Angeblich sollte es ein Ziel haben und eine Struktur aufbauen und kleine Punkte und Bewertungen usw. usw. markieren. Dies gilt nicht nur für Blogs im Allgemeinen, sondern ist auch für a Software, die vorgibt, gut zu sein 🙂 Für diese Aufgabe und nach einigen Problemen mit der Versionskontrollsoftware, die vor einigen Jahren in der Kernel-Entwicklung verwendet wurde, wurde sie geboren git 🙂

Wo man lernen kann git?

Die Menge an Dokumentation rund um Git ist atemberaubend, selbst wenn wir nur die mit der Installation gelieferten Manpages verwenden würden, hätten wir eine immense Menge an Lektüre. Ich persönlich finde das Git-Buch Sehr gut gestaltet, auch wenn ich einige Abschnitte von Abschnitt 7 übersetzt habe, habe ich noch einige, aber gib mir Zeit. Vielleicht kann ich in diesem Monat übersetzen, was von diesem Abschnitt übrig ist.

Was macht git?

Git ist so konzipiert, dass es schnell, effizient, einfach und mit einer Vielzahl von Informationen ausgestattet ist. Schließlich hat die Kernel-Community es für ihre Software erstellt, die eines der größten gemeinsamen Werke freier Software der Welt ist und über Hunderte verfügt von Beiträgen pro Stunde in einer Codebasis, die eine Million Zeilen überschreitet.

Das Interessante an git ist die Art und Weise, wie Datenversionen gepflegt werden. In früheren Zeiten (andere Versionskontrollprogramme) wurden zu einem bestimmten Zeitpunkt in der Geschichte Komprimierungen aller vorhandenen Dateien vorgenommen, z Sicherungskopie. Git verfolgt einen anderen Ansatz, wenn a commit Ein Punkt in der Geschichte wird markiert. Dieser Punkt in der Geschichte weist eine Reihe von Änderungen auf und funktioniert. Am Ende des Tages werden alle Änderungen im Laufe der Zeit zusammengestellt und die Dateien werden abgerufen, um als Meilensteine ​​von Versionen komprimiert oder markiert zu werden . Da ich weiß, dass das alles kompliziert klingt, werde ich Sie in einem super einfachen Beispiel auf eine magische Reise mitnehmen.

Kleines Kalkülprojekt

Die Berechnung wird ein Programm sein, das die Quadrate einer bestimmten Zahl findet, wir werden es in C tun und es wird so einfach wie möglich sein, also erwarten Sie nicht viele Sicherheitsüberprüfungen von mir. Zuerst werden wir ein Repository erstellen, ich werde es mit Github tun, um zwei Fliegen mit einer Klappe zu schlagen:

Besitzen. Christopher Diaz Riveros

Wir haben ein paar ziemlich einfache Dinge wie die Lizenz hinzugefügt (sehr wichtig, wenn Sie Ihre Arbeit schützen möchten, in meinem Fall zwingen Sie sie, die Ergebnisse zu teilen, wenn sie sie als Basis verwenden möchten: P)

Gehen wir jetzt zu unserem lieben Terminal. git clone ist der Befehl, der für das Herunterladen des Repositorys in der Datenbank verantwortlich ist url zugewiesen und erstellen Sie eine lokale Kopie auf unserem Computer.

Besitzen. Christopher Diaz Riveros

Lassen Sie uns jetzt mit überprüfen git log Was ist in der Geschichte unseres Projekts passiert:

Hier haben wir viele Informationen in verschiedenen Farben. Versuchen wir es zu erklären:

Die erste gelbe Linie ist der "Commit-Barcode". Jedes Commit hat eine eigene eindeutige Kennung, mit der Sie viele Dinge tun können, die wir jedoch für später speichern. Jetzt haben wir HEAD von Celeste und master Grün. Dies sind "Zeiger", deren Funktion darin besteht, auf den aktuellen Ort unserer Geschichte zu verweisen (HEAD) und den Zweig, an dem wir auf unserem Computer arbeiten (master).

origin/master ist das Gegenstück zum Internet, origin ist der Standardname, der unserem zugewiesen wurde URLUnd master ist der Zweig, in dem Sie arbeiten ... um es einfach zu halten, diejenigen, die eine haben / sind diejenigen, die nicht in unserem Team sind, sondern Verweise auf das, was im Internet ist.

Dann haben wir den Autor, das Datum und die Uhrzeit sowie die Commit-Zusammenfassung. Dies ist ein kleiner Rückblick auf das, was zu diesem Zeitpunkt in der Geschichte passiert ist, sehr wichtig in vielen Projekten, und es werden viele Informationen verurteilt. Schauen wir uns genauer an, was beim Festschreiben mit dem Befehl passiert ist git show <código-de-commit>

Besitzen. Christopher Diaz Riveros

Der Befehl git show führt uns zu diesem Bildschirm im Patch-Format, wo Sie sehen können, was zu diesem Zeitpunkt in der Geschichte hinzugefügt und was entfernt wurde (wenn etwas entfernt wurde). Bisher zeigt er uns nur, dass die Aufzeichnungen .gitignore,README.mdLICENSE.

Kommen wir nun zur Sache und schreiben eine Datei. Wir werden den ersten Meilenstein in unserer Geschichte schaffen.

Besitzen. Christopher Diaz Riveros

Kurz gesagt, wir werden ein Programm erstellen, das uns die Anzahl der Argumente anzeigt, die bei der Ausführung übergeben wurden, einfach 🙂

Besitzen. Christopher Diaz Riveros

Das war einfach - jetzt sehen wir uns den folgenden nützlichen Befehl an: git status

Besitzen. Christopher Diaz Riveros

Eine gutherzige Seele hat git übersetzt, um es einfach zu machen, hier zu folgen. Hier haben wir viele nützliche Informationen, wir wissen, dass wir in der Hauptbranche sind, mit der wir aktualisiert werden origin/master(der Github-Zweig), wir haben nicht verfolgte Dateien! und das, um sie hinzuzufügen, müssen wir verwenden git add, lass es uns versuchen 🙂

Besitzen. Christopher Diaz Riveros

Jetzt haben wir eine neue Grünfläche, in der die Datei angezeigt wird, die wir dem Arbeitsbereich hinzugefügt haben. An dieser Stelle können wir unsere Änderungen gruppieren, um ein Commit durchzuführen. Das Commit besteht aus einem Meilenstein in der gesamten Geschichte unseres Projekts. Wir werden das Commit erstellen git commit

Besitzen. Christopher Diaz Riveros

Kurz erklärt, die gelbe Linie ist der Titel unseres Commits. Ich schreibe main.c als bloße visuelle Referenz. Der schwarze Text ist die Erklärung der Änderungen, die seit dem vorherigen Festschreiben bis jetzt vorgenommen wurden. 🙂 Wir speichern die Datei und sehen unser Festschreiben in der Registrierung gespeichert.

Besitzen. Christopher Diaz Riveros

Jetzt werden wir die Geschichte unseres Projekts mit sehen git log

Besitzen. Christopher Diaz Riveros

Wieder im Protokoll können wir jetzt sehen, dass sich die grünen und roten Linien unterschieden haben, das heißt, weil wir in unserem Computer ein Commit sind, das über den im Internet gespeicherten liegt. Wir werden die Arbeit fortsetzen, nehmen wir an, dass ich jetzt ein zeigen möchte Nachricht für den Fall, dass der Benutzer mehr als ein Argument in das Programm einfügt (was den Rechner verwirren würde 🙂)

Wie wir sehen können, ist unser Programm sehr gewachsen 😀, jetzt haben wir die Funktion imprimir_ayuda() Daraufhin wird im Block eine Meldung zur Verwendung von Berechnungen angezeigt main() Jetzt machen wir eine Überprüfung mit if(Etwas, das wir zu einem anderen Zeitpunkt in einem Programmier-Tutorial sehen werden. Im Moment muss nur bekannt sein, dass das Programm endet und die Hilfe angezeigt wird, wenn mehr als 2 Argumente in die Berechnung eingegeben werden. Lassen Sie es uns ausführen:

Besitzen. Christopher Diaz Riveros

Wie Sie sehen können, wird jetzt die Nummer gedruckt, die anstelle der Anzahl der Argumente geliefert wurde, die ich Ihnen jedoch zuvor noch nicht gesagt habe - für Neugierige echo $? zeigt den Exit-Code des zuletzt ausgeführten Programms an 1 weil es fehlerhaft geendet hat. Lassen Sie uns nun überprüfen, wie unsere Geschichte verläuft:

Besitzen. Christopher Diaz Riveros

Jetzt wissen wir, dass wir 1 Commit vor Github sind, dass die Datei main.c wurde geändert, erstellen wir das nächste Commit, indem wir dies tun git add main.c  und dann git commit🙂

Besitzen. Christopher Diaz Riveros

Jetzt sind wir etwas spezifischer, da wir eine Funktion implementiert und den Validierungscode geändert haben. Nachdem es gespeichert wurde, werden wir unsere letzte Änderung überprüfen. Wir können es mit sehen git show HEAD

Besitzen. Christopher Diaz Riveros

Jetzt können Sie die roten und grünen Linien sehen, wir haben die Bibliothek hinzugefügt stdlib.h, modifizierte einen Großteil des Codes und fügte die Funktion unserer Geschichte hinzu.

Jetzt sehen wir das Protokoll: (git log)

Besitzen. Christopher Diaz Riveros

Wir können sehen, dass wir zwei Commits vor der Github-Version sind. Wir werden den Marker ein wenig ausgleichen, für den wir ihn verwenden git push origin master

Mit diesem sagen wir, senden Sie meine Commits an die URL origin auf dem Ast master

Besitzen. Christopher Diaz Riveros

Herzliche Glückwünsche! Jetzt sind deine Änderungen bei Github, glaubst du mir nicht? Lassen Sie es uns überprüfen 😉

Besitzen. Christopher Diaz Riveros

Jetzt haben wir die 3 Commits auf Github 🙂

Zusammenfassung

Wir haben die grundlegendsten Aspekte von angesprochen gitJetzt können sie einen einfachen Workflow in ihren Projekten erstellen. Dies ist fast nichts von all den vielfältigen Dingen, die mit git erledigt werden können, aber es ist sicherlich das praktischste und alltäglichste für Entwickler oder Blogger. Wir haben das Ende des Rechners noch nicht erreicht, aber wir werden das für ein anderes Mal belassen. Vielen Dank, dass Sie hierher gekommen sind, und ich hoffe, es hilft Ihnen, an mehreren Projekten teilzunehmen. Grüße


7 Kommentare, hinterlasse deine

Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.

  1.   Pablo sagte

    Hallo ... Ich weiß nicht, ob Sie es sind, aber ich kann die Bilder in diesem Bericht nicht sehen ...

    Grüße

  2.   Pablo sagte

    Es war ein Problem mit meinem Browser. Schade um den Ärger.

  3.   Tecprog Welt sagte

    Ich muss es noch genauer lesen, ich bin ein Neuling.

  4.   Rechnung sagte

    Toller Artikel, um mit Git zu beginnen, obwohl ich empfehle, Notizen zu machen, um die Details zu verstehen.
    Ein paar Dinge waren mir nicht klar:
    Was ist die Option für Fügen Sie .gitignore C hinzuobwohl ich denke, ich werde es sehen, wenn ich es übe,
    Warum müssen Sie git add main.c vor dem nächsten git-Commit wiederholen. Weist add main.c git an, diese Datei mit der Netzwerkversion zu vergleichen? Vergleicht es nicht automatisch alle hinzugefügten Dateien für die Verfolgung?

    1.    ChrisADR sagte

      Hallo Guillermo, es ist gut, dass Sie es nützlich fanden, Ihre Fragen zu beantworten:

      .gitignore ist eine Datei, die git mitteilt, welche Formate oder Muster ignoriert werden sollen. In diesem Fall werden durch Auswahl von C .o-Dateien ignoriert und andere, die zur Kompilierungszeit generiert werden. Dies ist gut, da Ihr git sonst sofort verrückt werden würde von jeder Zusammenstellung und Nachverfolgung 🙂 können Sie die große Anzahl von Formaten, die git in seiner C-Vorlage auslässt, überprüfen, indem Sie cat oder mit einem Texteditor ausführen.

      Obwohl git jede Datei verfolgt, die dem Arbeitsbaum hinzugefügt wurde, muss speziell ausgewählt werden, welche Dateien beim nächsten Commit eingegeben werden sollen. Um Ihnen ein Beispiel zu geben, nehmen wir an, dass Sie aufgrund Ihrer Arbeit zuvor 5 verschiedene Dateien geändert haben in der Lage sein, das Ergebnis zu sehen. Wenn Sie etwas genauer sein und erklären möchten, was in jedem einzelnen Vorgang ausgeführt wird, können Sie git add file1 ausführen. git commit; git add file2; git commit… .3,4,5; Git Commit. Auf diese Weise ist Ihre Geschichte sauber und die Änderungen gut definiert. Und falls Sie etwas ändern oder zurücksetzen müssen (fortgeschrittenere Themen), können Sie bestimmte Dinge zurücksetzen oder bestimmte Dinge hinzufügen, ohne den Rest zu ändern.

      Hoffe es hilft 🙂 Grüße und danke fürs fragen

    2.    ChrisADR sagte

      PS: git add sagt nicht, dass es mit der Version im Netzwerk verglichen werden soll, aber mit dem vorherigen Commit in Ihrer Branche wird es, wenn es lokal (grün) war, mit dieser Version verglichen, wenn es remote (rot) war Vergleiche mit dem anderen. Nur um zu verdeutlichen 😉

      1.    Rechnung sagte

        Perfekt, natürlich klärt es.