Commits in Git . verwenden

Inhaltsverzeichnis
Die Veränderungen in Git Sie sind nicht die gleichen wie in anderen Verwaltungs- und Versionskontrollsystemen, da nur das gespeichert wird, was sich wirklich geändert hat, die Größe der für die Kontrolle erzeugten Dateien reduziert und ihr auch eine größere Agilität verleiht.
Der Aspekt, der all dies steuert, ist der Index wer hat die Verantwortung zu wissen wer, was und wann von allen vorgenommenen Änderungen, deshalb nachdem wir die verschiedenen Aspekte zu unserem hinzugefügt haben Index von Zweig der Anruf ist gemacht begehen.
Was ist ein Commit?In Git Wir wissen, dass wir eine Änderung vornehmen müssen, um eine Änderung vorzunehmen begehen des gleichen, sobald es zum Repository-Index hinzugefügt wurde. Was ist jedoch ein begehen exakt? Diese Frage wird uns nicht immer gestellt, da wir so Git behandelt das ist ziemlich klar, aber a begehen ist der Weg Git registriert den aktuellen Stand des Repository-Index und speichert ihn im entsprechenden Objekt, auf diese Weise jeweils begehen sie wird von der vorherigen abgeleitet und somit kann die Struktur, die sich nicht verändert, wiederverwendet werden.
Das Ressourcenmanagement, das dies so schnell macht, ist auf Vergleiche zwischen den Ländern zurückzuführen SHA1 Wenn also die Elemente innerhalb des Index den gleichen Hash haben, gehen sie nicht weiter auf ihre Änderungen ein, da sie identisch sind und daher nur die Dateien genommen werden, die sich wirklich geändert haben.
Die Art und Weise, wie die verpflichtet sich ermöglicht es uns, hierarchische Strukturen aufzubauen, die die Gewissheit geben, den Ursprung aller registrierten Änderungen zu erhalten, wenn wir also die besten Praktiken von . befolgen Git Wir werden nie verloren gehen, denn dank der eindeutigen Kennungen können wir auch sicher sein, dass eine Funktion, die ein Problem verursacht hat, genau an der Stelle gefunden wird, an der sie eingefügt wurde.
Wir haben kommentiert, wie verpflichtet sich nimm ein Hash in SHA1 mit denen sie identifiziert werden können, stellt sich heraus, dass dieser Hash sie auch einzigartig und unwiederholbar macht, d begehen und in einem anderen Repository wird der gleiche Hash gefunden, damit wir wissen, dass es derselbe ist begehen.
Aus diesem Grund begehen wird auch berücksichtigt atomar, d. h. als einzelne Einheit unabhängig, die den Zustand vieler Verzeichnisse oder Dateien speichert, können wir uns damit auf die begehen als Einheit innerhalb unseres Repositorys und somit in der Lage zu sein, jedes als ein Element zu behandeln, das, obwohl es mit dem vorherigen verwandt ist, einzigartig ist.
Obwohl das Haschisch SHA1 dient als eindeutige Kennung für die begehen, seine Struktur von 40 alphanumerische Zeichen kann ein Problem darstellen, wenn wir mit einem anderen Entwickler kommunizieren und das erklären wollen begehen Wir reden.
Relative NamenUm dieses Problem zu lösen, können wir etablieren relative Namen und leichter zu merken für verpflichtet sichDiese ersetzen nicht das Hash, sondern funktionieren als eine Art Etikett, das es uns ermöglicht, sie menschlicher zu identifizieren.
Um über das Letzte zu sprechen begehen des Zweig wir können uns einfach darauf beziehen KOPF, da sich dies immer auf die neueste und neueste bezieht begehenDa dies jedoch nicht immer erforderlich ist, reicht es aus, wenn wir die ersten Zeichen des verwenden hash, obwohl es nicht immer einzigartig sein wird, so dass wir durch das Hinzufügen weiterer Zeichen die entsprechende Einzigartigkeit erreichen.
Sehen wir uns dann den Befehl an, den wir verwenden müssen, um letzteres zu erreichen:
git log -1 --pretty = Oneline-Identifier-Commit

Nun sehen wir im folgenden Bild, wie wir a . identifizieren begehen in unserem Test-Repository, dafür werden wir zunächst herausfinden, welches der SHA1 des KOPF und dann werden wir es mit seinen ersten Zeichen nennen, mal sehen:

Mit dem vorherigen Beispiel haben wir ein Werkzeug für entdeckt Git das kann sehr nützlich sein und ist das log-Befehl, dies ist sehr mächtig, da es uns ermöglicht, die verschiedenen zu lokalisieren begehen auf schnelle und präzise Weise, hat jedoch viele Parameter und Konfigurationen, die zunächst schwer zu merken sein können benutzen.
Wenn wir den Commit-Verlauf sehen möchten, gehen Sie einfach wie folgt vor:
git log Branchname

Damit erhalten wir die detaillierte Verlaufsinformationen unserer Zweig und ihre verpflichtet sichSehen wir uns an, wie es in unserer Konsole im Repository der Tests aussieht, die wir haben:

Wir bemerken dann, wie die verpflichtet sich sind von den neuesten bis zu den ältesten geordnet, so dass wir ein wenig die historische Linie der Veränderungen sehen können, die die Zweig ausgewählt, um das historische Protokoll anzuzeigen.
Da die Arbeit an der Konsole manchmal etwas schwerfällig ist, obwohl es sehr notwendig ist, Git bietet uns ein Werkzeug, mit dem wir die Geschichte von verpflichtet sich grafisch und ist gitk ist kein Unterbefehl von Git zum Beispiel log, das wir bereits gesehen haben, aber es ist ein unabhängiger Befehl und ermöglicht es uns, auf mehr Details des Zweigs und seiner Geschichte zuzugreifen.
Um es zu verwenden, müssen wir einfach den folgenden Befehl ausführen:
gitk nameBranch

Sehen wir uns an, wie die Ausführung in der Konsole aussieht:

Auch wenn es den Anschein hat, als sei nichts passiert, erhalten wir in Kürze ein Fenster mit der gewünschten Grafik für die Zweig angegeben, wie wir im folgenden Screenshot sehen können:

VERGRÖSSERN

Wir können feststellen, dass wir neben der Verbesserung der Visualisierung viel mehr Details haben.
Referenzen Ja Symrefs gehören Verweise Ja symbolische Verweise jeweils entspricht der erste einem Bezeichner SHA1 eines Objekts innerhalb des Objektrahmens unseres Repositorys, das zweite hingegen entspricht indirekt einem Objekt, ist aber trotz seines Namens auch eine Referenz.
Es ist sehr wichtig, diese Referenzstruktur zu kennen, da sie es uns ermöglicht, die Organisation unseres Verzeichnisses zu verstehen verpflichtet sich Ja Geäst innerhalb Git, die im Verzeichnis gespeichert sind .git / ref.
Erstellen einer symbolischen ReferenzWenn wir explizit a . erstellen wollen symbolischer Hinweis benutze einfach den Befehl git symbolische-ref, und obwohl es möglich ist, Namen wie . zu verwenden KOPF für diese Referenzen ist es nicht ratsam, da sie uns am Ende zu einer Verwirrung führen können, die unserem Repository Schaden zufügen kann.
Sehen wir uns abschließend an, wie die Ausführung dieses Befehls aussieht, wenn wir ihn auf unser Test-Repository anwenden:

Ein weiterer interessanter Aspekt von verpflichtet sich, ist, dass wir damit arbeiten können relative NamenDies macht das Auffinden von Commit-Bereichen sehr einfach. Wenn wir beispielsweise herausfinden möchten, was zwischen den Bewertungen eines bestimmten Zeitraums vorhanden ist, können wir dies tun.
Dazu brauchen wir nur den Namen der Filiale plus das Symbol ^ und die Revisionsnummer. Zum Beispiel Meister ^ wobei wir uns auf die vorletzte Änderung im Zweig Meister.
Repository-HistorieAuf diese Weise können wir uns durch die gesamte Historie unseres Repositoriums bewegen, was uns die Möglichkeit gibt, relativ zu den verpflichtet sich die es uns möglich gemacht haben, die aktuelle zu haben, wenn wir der Struktur folgen Meister 2 führt uns zum zweiten Vater von begehen, das heißt derjenige, der parallel Leben gegeben hat, auch mit ~ wir können auf den Vater des Vaters unseres aktuellen Commits zugreifen, also den Großvater, um es in gewisser Weise genealogisch auszudrücken.
Ein Beispiel kann sein Meister 2 ~ 3 Um auf historische Änderungen in unserem Repository zu verweisen, müssen wir einfach den folgenden Befehl verwenden, wenn wir den Namen eines relativen Commits erhalten möchten:
git rev-parse RelativeName

Dies wird die zurückgeben SHA1 des begehen bei denen wir angekommen sind. Sehen wir uns im folgenden Bild an, wie wir den Namen des aktuellen Commits von master und with erhalten können Meister ~ der Name des ersten Elternteils desselben, der der sein würde begehen von dem wir ausgehen:

Wir haben dann gemerkt, wie wir zwei bekommen konnten SHA1 unterschiedlich und innerhalb unseres Repositorys gültig, nur unter Verwendung von relative Namen.
Damit beenden wir dieses Tutorial, wir haben neue Konzepte dafür eingeführt, was die verpflichtet sich innerhalb GitDies gibt uns die Möglichkeit, die Strukturen unserer Repositorys besser zu verstehen, die Organisation wird dadurch logischer und wir können Änderungen in unserem Code viel effektiver verwalten. Der Weg Git Die Verwaltung der Unterschiede macht es so besonders und hat sich zu einem der führenden Versionsmanager der heutigen Technologie entwickelt.Hat dir dieses Tutorial gefallen und geholfen?Sie können den Autor belohnen, indem Sie diesen Knopf drücken, um ihm einen positiven Punkt zu geben
wave wave wave wave wave