1. git hinzufügen
Mit dem Befehl git add können Sie Dateien und Ordner für Ihr Git-Repository verfolgen und in den Staging-Bereich verschieben. Sie müssen den Befehl git commit verwenden, um sie dauerhaft in Ihren historischen Snapshots zu speichern.
Die Verwendung des Befehls ist einfach. Sie können Dateien und Ordner einzeln hinzufügen oder den Glob-Operator des Linux-Typs Sternchen (*) verwenden, um sie in Gruppen hinzuzufügen.
Nehmen wir das folgende Beispiel:
Angenommen, im obigen Fall haben wir die ReadMe-Datei bereits hinzugefügt.TXT. Aber der Rest der Dateien wurde nicht hinzugefügt.
Lassen Sie uns den Status überprüfen:
$git-StatusAuf Zweigmeister
Ihre Filiale ist aktuell mit 'Herkunft/Master'.
Nicht verfolgte Dateien:
(benutze 'git add
Datei1.TXT
Datei2.TXT
Ordner1/
Die Dateien und Ordner sind rot, was bedeutet, dass sie nicht verfolgt werden. Wir können sie hinzufügen mit:
$git Datei hinzufügen1.txt-Datei2.txt-Ordner1/*Wenn wir jetzt den Status prüfen:
$git-StatusAuf Zweigmeister
Ihre Filiale ist aktuell mit 'Herkunft/Master'.
Zu verpflichtende Änderungen:
(benutze 'git reset HEAD
neue Datei: Datei1.TXT
neue Datei: Datei2.TXT
neue Datei: Ordner1/Datei3.TXT
neue Datei: Ordner1/Datei4.TXT
Der Befehl git add hat die Dateien zum Staging-Bereich hinzugefügt. Dateien werden im Staging-Bereich aufbewahrt, bevor sie durch den Commit-Prozess dauerhaft gemacht werden.
2. Git-Zweig
Auf Git ist das Verzweigen einfach. In anderen Versionskontrollsystemen war es eine teure Operation. Aber Git-Algorithmen sind für Verzweigungen optimiert. Sie können den Befehl git branch jederzeit verwenden, wenn Sie eine separate Entwicklungslinie erstellen möchten, ohne sich um die Leistung kümmern zu müssen.
Schauen wir uns das folgende Beispiel an.
$git-StatusAuf Zweigmeister
Ihre Filiale ist aktuell mit 'Herkunft/Master'.
Zu verpflichtende Änderungen:
(benutze 'git reset HEAD
neue Datei: Datei1.TXT
neue Datei: Datei2.TXT
neue Datei: Ordner1/Datei3.TXT
neue Datei: Ordner1/Datei4.TXT
Beachten Sie, dass wir 'On Branch Master' sind. Wenn Sie ein neues Projekt erstellen, landen Sie im Branch-Master. Sie können auch den Befehl git branch -a verwenden, um herauszufinden, in welchem Branch Sie sich befinden:
$git branch -a* Meister
Das obige sagt Ihnen, dass es nur einen Zweig namens 'Master' gibt und das Sternchen (*) bedeutet, dass Sie sich in diesem Zweig befinden.
Erstellen wir einen neuen Branch namens 'testing':
$git Branch-TestsJetzt können wir die Filialen noch einmal überprüfen:
$git branch -a* Meister
testen
Obwohl wir uns noch im 'Master'-Zweig befinden, können wir auch den neuen 'Testing'-Zweig sehen, der erstellt wurde. Der Zweig "Testen" ist eine Nachbildung des Zweigs "Master".
3. git Kasse
Der Befehl git checkout führt Sie zu einer Verzweigung, damit Sie dort an den Ressourcen arbeiten können. Sie können sich Zweige als Flüsse und Bäche vorstellen. Mit einem Branch erstellen Sie einen neuen Stream. Mit dem Checkout-Befehl bewegst du dich in diesen Stream.
Schauen wir uns den 'testing'-Zweig aus dem vorherigen Beispiel an:
$git Checkout-TestsWechsel zum Zweig 'Testen'
Lassen Sie uns nun den Status und die Zweige noch einmal überprüfen:
$git-StatusBeim Filialtest
nichts zu begehen, Arbeitsverzeichnis sauber
$git branch -a
Meister
* testen
Sie können am git-Zweig sehen - ein Befehl, den wir in den testing-Zweig verschoben haben.
4. Git-Klon
Mit dem Befehl git clone können Sie eine Kopie eines beliebigen Git-Repositorys erstellen. Sobald Sie ein Repository klonen, beginnt der neue geklonte Ordner, die Änderungen lokal zu verfolgen. Da Git verteilt ist, ist ein Klon ein vollständig autonomes Git-Repository.
Um zu zeigen, wie das Klonen funktioniert, erstellen wir ein neues Repository:
$mkdir dir1$cd dir1
$mkdir meinProjekt
$cd meinProjekt/
$git init
Initialisiertes leeres Git-Repository in /dir1/myproject/.git/
$touch ReadMe.TXT
$git commit -m 'Mein Repository initialisieren'
[master (root-commit) 5a0bd75] Initialisiere mein Repository
1 Datei geändert, 0 Einfügungen (+), 0 Löschungen (-)
Modus erstellen 100644 ReadMe.TXT
Im obigen Beispiel haben wir ein Git-Repository namens 'myproject' im Ordner 'dir1' erstellt. Angenommen, dies ist unser Haupt-Repository. Jetzt wollen wir eine Kopie davon machen und woanders arbeiten.
Lassen Sie uns ein Verzeichnis namens 'dir2' erstellen und das Repository 'myproject' klonen. Wir verwenden den Git-Klon
$cd dir2
$git-Klon /dir1/myproject/
Klonen in 'myproject'…
getan.
$ls
Mein Projekt
Der Befehl git clone funktioniert auch mit einer URL.
$git-Klon https://github.com/test/test.gitSie können auch den Namen des Klons ändern, indem Sie ihn nach der Git-Repository-Adresse angeben:
$git-Klon https://github.com/test/test.git mytest5. git-commit
Der Befehl git commit wird nach dem Befehl git add ausgeführt. In unserem git add-Beispiel hatten wir die Dateien zum Tracking hinzugefügt, aber nicht in das Git-Repository übertragen committed. Das Tracking bleibt lokal, bis ein Commit erfolgt. Wenn Sie die Änderungen festschreiben, werden sie Teil des dauerhaften Datensatzes.
Unten führen wir das git commit -m . aus
[master 3ef57b3] Commit meiner Dateien und Ordner
4 Dateien geändert, 0 Einfügungen (+), 0 Löschungen (-)
Modus erstellen 100644 Datei1.TXT
Modus erstellen 100644 Datei2.TXT
Modus erstellen 100644 Ordner1/Datei3.TXT
Modus erstellen 100644 Ordner1/Datei4.TXT
Wenn Sie die Option -m nicht verwenden, um einen Kommentar abzugeben, öffnet Git Ihren Standard-Texteditor und fragt danach. Kommentare gelten als gute Versionskontrollpraxis. Füge also immer sinnvolle Kommentare in deinen Commit ein.
6. git config
Mit dem Befehl git config können Sie verschiedene Optionen für Ihr Git-Repository einrichten. Sie können beispielsweise die git config -global . verwenden
So können Sie die Werte einstellen:
$ git config --global user.Name 'Zak H'$ git config --global user.E-Mail an [email protected]
So können Sie die Werte überprüfen:
$git config --global user.NameZak H
$git config --global user.Email
[email protected]
7. git diff
Der Befehl git diff hilft Ihnen, die Unterschiede zwischen Dateien und Ordnern zu erkennen. Wenn Sie Änderungen an einer Datei vornehmen, ist dies ein nützliches Werkzeug, um die von Ihnen vorgenommenen Änderungen schnell auszuwerten.
Nehmen wir an, wir beginnen unsere Arbeit mit einer ReadMe.txt-Datei mit zwei Zeilen. Dann entfernen wir die zweite Zeile und fügen eine dritte hinzu.
Wenn wir jetzt den diff-Befehl ausführen, werden die Unterschiede zwischen der festgeschriebenen Version und der lokal geänderten Version im Staging-Bereich angezeigt. So wird es aussehen:
$git diffdiff --git a/ReadMe.txt b/ReadMe.TXT
Index 9475ddc… 1804904 100644
--- a/ReadMe.TXT
+++ b/ReadMe.TXT
@@ -1,2 +1,2 @@
Zeile 1: Meine erste Zeile
-Zeile 2: Meine zweite Zeile
+Zeile 3: Meine DRITTE Zeile
Zeile 1 ist unverändert (weiß), Zeile 2 entfernt (rot) und Zeile 3 hinzugefügt (grün).
Sie können den diff-Befehl verwenden, um auch Unterschiede zwischen bestimmten Commits zu finden.
8. git holen
Der Befehl git fetch ruft die neuesten Ressourcen vom angegebenen Ursprung ab.
Schauen wir uns ein Beispiel an. Angenommen, Sie haben folgende Bedingung:
dir1/meinProjektdir2/myproject (geklont)
Der Ordner 'dir2/myproject' wird von 'dir1/myproject' geklont. Wenn nun jemand Änderungen an 'dir1/myproject' vorgenommen hat, können Sie diese Änderungen wie folgt aus 'dir2/myproject' abrufen:
$git Herkunft abrufenFernbedienung: Objekte zählen: 2, fertig.
remote: Objekte komprimieren: 100% (2/2), fertig.
Fernbedienung: Gesamt 2 (Delta 0), wiederverwendet 0 (Delta 0)
Objekte auspacken: 100% (2/2), fertig.
Von /dir2/… /dir1/myproject
5a0bd75… 1713734 master -> Herkunft/Master
Es ist wichtig, sich daran zu erinnern, dass der Befehl git fetch die Änderungen nicht zusammenführt. Verwenden Sie zum automatischen Abrufen und Zusammenführen den Befehl git pull. Dann fragen Sie sich vielleicht, warum Sie diesen Befehl überhaupt verwenden in. Möglicherweise gibt es erweiterte Git-Optionen, bei denen Sie alle Änderungen von Ihrem Ursprungsserver erhalten und Änderungen dann nur selektiv auf bestimmte Dateien anwenden. Mit dem Befehl git fetch können Sie dies erreichen. Es ist jedoch ein fortgeschrittenes Thema, das Sie in der git fetch-Dokumentation finden können.
9. git grep
Mit dem Befehl git grep können Sie Ihren Git-Baum nach Informationen durchsuchen. Hier ist ein Beispiel für die Suche nach dem Wort 'Line' in unserem Git-Repository. Die Option -n oder --line-number zeigt Zeilennummern an, bei denen Git eine Übereinstimmung findet:
$git grep -n ZeileLiesmich.txt:1:Zeile 1: Meine erste Zeile
Liesmich.txt:2:Zeile 3: Meine DRITTE Zeile
Sie können mit der Option -c oder --count eine ähnliche Suche durchführen, um zu sehen, wie oft die Übereinstimmung vorhanden ist:
git grep -c ZeileLiesmich.txt:2
Der Grund für die Verwendung von git grep gegenüber Linux grep ist, dass git grep für git-Repositorys schneller ist.
10. git log
Der Befehl git log zeigt dir den Commit-Verlauf an.
$git logCommit 171373479fc309846ef605fbe650933767afd0fb
Autor: Zak H
Datum: Mi. 21. Nov. 20:26:32 2018 -0800
Neue Dateien hinzugefügt
begehen 5a0bd759506d20b2b989873258bf60d003aa3d36
Autor: Zak H
Datum: Mi. 21. Nov. 18:48:35 2018 -0800
Mein Repository initialisieren
Sie können auch die Option --oneline verwenden, um eine verkürzte Version anzuzeigen. Die gekürzte Version ist einfacher zu folgen.
$git log --oneline1713734 Neue Dateien hinzugefügt
5a0bd75 Mein Repository initialisieren
11. git zusammenführen
Der Befehl git merge führt Branches zusammen.
Lassen Sie uns ein neues Repository mit 'main' erstellen und dann einen 'test'-Zweig erstellen.
$mkdir meinProjekt$cd meinProjekt
$git init
Initialisiertes leeres Git-Repository in /git_essentials/myproject/.git/
$touch ReadMe.TXT
$git add -A
$git commit -m 'Erstes Commit'
[master (root-commit) b31d4e1] Initiales Commit
1 Datei geändert, 0 Einfügungen (+), 0 Löschungen (-)
Modus erstellen 100644 ReadMe.TXT
$git-Zweigtest
$git branch -a
* Meister
Prüfung
$git Checkout-Test
Auf Zweig 'test' gewechselt
Nehmen wir im Zweig 'test' einige Änderungen vor:
$touch Datei1.txt-Datei2.TXT$Ls
Datei1.txt Datei2.txt ReadMe.TXT
$git add -A
$git commit -m 'Zwei neue Dateien hinzugefügt'
[test 7e11910] Zwei neue Dateien hinzugefügt
2 Dateien geändert, 0 Einfügungen (+), 0 Löschungen (-)
Erstellungsmodus 100644 Datei1.TXT
Erstellungsmodus 100644 Datei2.TXT
Wir haben dem Test zwei Dateien hinzugefügt.
$git branch -aMeister
* Prüfung
$ls
Datei1.txt Datei2.txt ReadMe.TXT
$git Kassenmeister
Auf Zweig 'master' gewechselt
$git branch -a
* Meister
Prüfung
$ls
Liesmich.TXT
Wir sehen aus obigem, dass File1.txt und Datei2.txt existiert im 'test'-Zweig, aber nicht in 'master'.
Lass uns jetzt fusionieren.
$git Merge-TestAktualisierung von b31d4e1… 7e11910
Schneller Vorlauf
Datei1.txt | 0
Datei2.txt | 0
2 Dateien geändert, 0 Einfügungen (+), 0 Löschungen (-)
Erstellungsmodus 100644 Datei1.TXT
Erstellungsmodus 100644 Datei2.TXT
$ls
Datei1.txt Datei2.txt ReadMe.TXT
$git branch -a
* Meister
Prüfung
Jetzt haben wir 'Datei1.txt' und 'Datei2.txt' auch im 'master'-Zweig.
Hinweis: Stellen Sie sich das Zusammenführen als Pull-Vorgang vor. Sie müssen sich in der Branche befinden, in die Sie eingliedern möchten. In diesem Fall befinden Sie sich im 'master'-Zweig und ziehen die Änderungen aus dem 'test'-Zweig.
12. git mv
Der git mv ist ein Kurzbefehl zum Ausführen der Befehle git add und git rm. Es kann verwendet werden, um Dateien umzubenennen.
Hier ist ein Beispiel:
$git mv ReadMe.txt-ReadMe.md$git-Status
Auf Zweigmeister
Zu verpflichtende Änderungen:
(benutze 'git reset HEAD
umbenannt: ReadMe.txt -> ReadMe.md
13. git ziehen
Der Befehl git pull ist dem git fetch sehr ähnlich, außer dass die Zusammenführung automatisch erfolgt.
Hier ist ein Beispiel für die Ausführung von git pull origin wie git fetch one (wir führen eine Pull-Anfrage vom Klon aus, um Änderungen aus dem ursprünglichen Git-Repository abzurufen):
$git Pull-UrsprungFernbedienung: Objekte zählen: 3, fertig.
remote: Objekte komprimieren: 100% (2/2), fertig.
Fernbedienung: Gesamt 3 (Delta 0), wiederverwendet 0 (Delta 0)
Objekte auspacken: 100% (3/3), fertig.
Von /LearnGIT/git_essentials/myproject
7e11910… e67f932 Master -> Herkunft/Master
Aktualisieren von 7e11910… e67f932
Schneller Vorlauf
Datei1.txt | 1 +
Datei2.txt | 1 +
Datei3.txt | 1 +
Liesmich.txt => ReadMe.md | 0
4 Dateien geändert, 3 Einfügungen(+)
Erstellungsmodus 100644 Datei3.TXT
ReadMe umbenennen.txt => ReadMe.md (100%)
Sie können sehen, dass die Änderungen vom Ursprung heruntergeladen und mit dem Klon zusammengeführt wurden.
14. git push
Der Befehl git push wird verwendet, um Änderungen an Remote-Repositorys zu übertragen. Hier ist ein Beispiel für die Ausführung des Push-Befehls:
$git push origin masterObjekte zählen: 2, fertig.
Delta-Komprimierung mit bis zu 4 Threads.
Komprimieren von Objekten: 100% (2/2), fertig.
Schreibende Objekte: 100% (2/2), 242 Byte | 0 Byte/s, fertig.
Gesamt 2 (Delta 1), wiederverwendet 0 (Delta 0)
Zu /LearnGIT/git_essentials/myproject
e67f932… 90dc546 Master -> Master
Der Befehl git push origin master sendet Änderungen an den 'master'-Zweig des Ursprungs (das Git-Repository, das Sie geklont haben) vom 'master'-Zweig des geklonten Repositorys. Optisch sieht der Push so aus:
geklont/master -> origin/masterfünfzehn. git rebase
Der Befehl git rebase hilft Ihnen, die Basis der Branches zu ändern. Bei einer allgemeinen Zusammenführung passiert etwa Folgendes:
Der Test-Branch wurde mit dem 'master'-Branch zusammengeführt, um einen neuen Commit zu erstellen.
Bei einem Rebase passiert folgendes:
Die Änderungen aus der E- und F-Änderungsliste werden neu berechnet und am Ende des Master-Zweigs gelatcht. Rebasing hilft, die Filialen zu vereinfachen.
Nehmen wir an, wir haben diese Situation im 'master'-Zweig:
$ git log --oneline7f573d8 Commit C: c added hinzugefügt.TXT
795da3c Commit B: hinzugefügt b.TXT
0f4ed5b Commit A: hinzugefügt a.TXT
Und ein Feature-Zweig:
$ git log --oneline8ed0c4e Commit F: modifiziertes b.TXT
6e12b57 Commit E: modifiziert a.TXT
795da3c Commit B: hinzugefügt b.TXT
0f4ed5b Commit A: hinzugefügt a.TXT
Wenn wir rebasieren, erhalten wir git rebase master:
$ git Checkout-FunktionZu Zweig 'Feature' gewechselt
$ git rebase master
Zuerst den Kopf zurückspulen, um Ihre Arbeit darüber abzuspielen…
Anwenden: Commit E: geändert a.TXTAnwenden: Commit F: modifiziert b.TXT
Dann 'feature' in 'master' zusammenführen.
$ git checkout master
Auf Zweig 'master' gewechselt
$ git Merge-Funktion
Aktualisieren 7f573d8… 9efa1a3
Schneller Vorlauf
ein.txt | 1 +
b.txt | 1 +
2 Dateien geändert, 2 Einfügungen(+)
Wenn Sie nun sowohl zum 'master'- als auch zum 'feature'-Zweig gehen, sehen Sie dieselben Protokolle:
$ git log --oneline9efa1a3 Commit F: modifiziert b.TXT
8710174 Commit E: geändert a.TXT
7f573d8 Commit C: c added hinzugefügt.TXT
795da3c Commit B: hinzugefügt b.TXT
0f4ed5b Commit A: hinzugefügt a.TXT
Rebasing hat sie zusammengequetscht.
Hinweis: Verwenden Sie niemals Rebasing in öffentlichen Repositorys, da Entwickler auf größere Merge-Probleme stoßen werden.
16. git fernbedienung
Mit dem Befehl git remote können Sie einen Remote-Server für Ihr Repository einrichten. In einer Klon-Situation wird das Quell-Repository automatisch zum Remote.
Beispielsweise:
$pwd/LearnGIT/git_essentials/test
$git remote -v
Herkunft /LearnGIT/git_essentials/myproject (fetch)
Herkunft /LearnGIT/git_essentials/myproject (push)
Das obige zeigt, dass der Remote-Server für 'test' ein anderer Ordner namens 'myproject' ist. Der Grund ist, dass 'test' für mein Projekt geklont wurde.
Aber der Remote-Server muss nicht lokal sein. Sie können so etwas mit einer URL haben:
$git remote -vHerkunft https://github.com/zakh/myproject (holen)
Herkunft https://github.com/zakh/myproject (drücken)
Sie können ein git remote Repository mit dem Befehl git remote add einrichten
Dadurch wird Ihr Repository mit dem Ursprung verbunden, damit Sie es abrufen und verschieben können.
17. git zurücksetzen
Mit dem git reset können Sie hinzugefügte Dateien rückgängig machen.
Angenommen, Sie haben die Datei 'test . hinzugefügt.txt' in Ihr Repository:
$Touch-Test.TXT$git add -A
$git-Status
Auf Zweigmeister
Ihre Filiale ist aktuell mit 'Herkunft/Master'.
Zu verpflichtende Änderungen:
(benutze 'git reset HEAD
neue Datei: test.TXT
Sie entscheiden sich jedoch, dass Sie "Test" nicht verfolgen möchten.txt' mehr. Sie können den git reset Head verwenden
Wenn Sie den Status überprüfen, wird die Datei wieder nicht verfolgt:
$git-StatusAuf Zweigmeister
Ihre Filiale ist aktuell mit 'Herkunft/Master'.
Nicht verfolgte Dateien:
(benutze 'git add
Prüfung.TXT
Die Datei 'test.txt' wird nicht mehr verfolgt.
18. git zurück
Mit dem Befehl git revert können Sie Änderungen mit der Commit-Hash-Nummer rückgängig machen.
$echo 'Test 1' >> MyFile.TXT$git add -A
$git commit -m 'Änderung 1 hinzugefügt'
[master 78a8277] Änderung 1 hinzugefügt
2 Dateien geändert, 1 Einfügung(+)
Erstellungsmodus 100644 MyFile.TXT
Modus erstellen 100644 Test.TXT
$cat MyFile.TXT
Test 1
$echo 'Test 2' >> MyFile.TXT
$git add -A
$git commit -m 'Änderung 2 hinzugefügt'
[master a976e9c] Änderung 2 hinzugefügt
1 Datei geändert, 1 Einfügung (+)
$cat MyFile.TXT
Test 1
Test 2
$git log --oneline
a976e9c Änderung 2 hinzugefügt
78a8277 Änderung 1 hinzugefügt
90dc546 Datei hinzugefügt Added
e67f932 Neue Dateien hinzugefügt
7e11910 Zwei neue Dateien hinzugefügt
b31d4e1 Erster Commit
Wir haben eine 'MyFile . erstellt.txt“ und zwei Änderungen festgeschrieben, sodass die Datei die Zeilen „Test 1“ und „Test 2“ enthält. Aber wir haben uns entschieden, dass wir den zweiten Commit nicht wollen. Also haben wir den Commit-Hash (a976e9c) dafür gefunden. Wir können den git revert verwenden
[master 4f270e7] 'Änderung 2 hinzugefügt' rückgängig machen
1 Datei geändert, 1 gelöscht(-)
$git log --oneline
4f270e7 'Änderung 2 hinzugefügt' rückgängig machen
a976e9c Änderung 2 hinzugefügt
78a8277 Änderung 1 hinzugefügt
90dc546 Datei hinzugefügt Added
e67f932 Neue Dateien hinzugefügt
7e11910 Zwei neue Dateien hinzugefügt
b31d4e1 Erster Commit
$cat MyFile.TXT
Test 1
Wir sehen, dass ein neuer Commit-Hash erstellt wurde, der das Commit der Zeile 'Test 2' zurückgesetzt hat. Die Datei hat jetzt nur noch die Zeile 'Test 1'.
19. git rm
Der Befehl git rm richtet Dateien für zukünftige Löschungen ein. Es legt die zu löschenden Dateien in den Staging-Bereich.
$git rm test.TXTrm 'test.TXT'
$git-Status
Auf Zweigmeister
Dein Branch ist 'origin/master' um 3 Commits voraus.
(Verwenden Sie 'git push', um Ihre lokalen Commits zu veröffentlichen)
Zu verpflichtende Änderungen:
(benutze 'git reset HEAD
gelöscht: test.TXT
Sie müssen die Änderungen bestätigen, damit das Löschen wirksam wird.
20. git stash
Mit dem Befehl git stash können Sie Arbeiten, die Sie noch nicht ausführen möchten, vorübergehend aufgeben.
Angenommen, Sie arbeiten in einem Repository mit den folgenden Dateien:
John.txt Maria.TXT
Sie möchten diese Dateien projektbezogener ändern. Sie beginnen also mit:
$git mv John.txt Projektdatei1.TXT
$ls
Maria.txt Projektdatei1.TXT
$git-Status
Auf Zweigmeister
Zu verpflichtende Änderungen:
(benutze 'git reset HEAD
umbenannt: John.txt -> ProjektDatei1.TXT
Mitten in der Umbenennung und Aktualisierung von 'John.txt' in 'ProjektDatei1.txt' erhalten Sie eine Aufforderung, etwas im Projekt zu ändern. Aber Sie sind nicht bereit, 'ProjectFile1 . einzureichen.TXT'. Also verstaust du es.
$git VorratGespeichertes Arbeitsverzeichnis und Indexstatus WIP auf Master: f0b5a01 Init John and Mary
HEAD ist jetzt bei f0b5a01 Init John und Mary
$lsJohn.txt Maria.TXT
Ihre lokale Arbeitsumgebung ist wieder da, wo Sie waren, bevor Sie Ihre projektbasierten Änderungen vorgenommen haben. Nach der Unterbrechung, anstatt zu 'John . zurückzukehren.txt', entscheidest du dich, an der 'Mary.txt'-Datei jetzt:
$git mv Mary.txt Projektdatei2.TXT$git-Status
Auf Zweigmeister
Zu verpflichtende Änderungen:
(benutze 'git reset HEAD
umbenannt: Mary.txt -> ProjektDatei2.TXT
$ls
John.txt ProjectFile2.TXT
Du wirst wieder unterbrochen und du verstaust deine neue Arbeit an 'Mary.TXT':
$git VorratGespeichertes Arbeitsverzeichnis und Indexstatus WIP auf Master: f0b5a01 Init John and Mary
HEAD ist jetzt bei f0b5a01 Init John und Mary
$ls
John.txt Maria.TXT
Nachdem die Unterbrechungsarbeit erledigt ist, überprüfen Sie die Stash-Liste:
$git Vorratslistestash@0: WIP auf Master: f0b5a01 Init John und Mary
stash@1: WIP auf Master: f0b5a01 Init John und Mary
Du hast zwei Work-in-Progress (WIP) im Stash. Wenn du zum ersten Mal den Vorrat aufklappst, bekommst du die neueste 'Mary.txt' Änderungen:
$git Stash PopMaria entfernen.TXT
Auf Zweigmeister
Zu verpflichtende Änderungen:
(benutze 'git reset HEAD
neue Datei: ProjectFile2.TXT
Änderungen, die nicht für Commit bereitgestellt werden:
(benutze 'git add/rm
(benutze 'git checkout --
gelöscht: Maria.TXT
Verlorene Refs/Stash@0 (9b77a6b75e4e414fb64de341668c812d3d35150c)
Wenn du das zweite Mal den Vorrat aufklappst, bekommst du den 'John.txt'-bezogene Änderungen:
$git Stash PopJohn entfernen.TXT
Auf Zweigmeister
Zu verpflichtende Änderungen:
(benutze 'git reset HEAD
neue Datei: ProjectFile1.TXT
neue Datei: ProjectFile2.TXT
Änderungen, die nicht für Commit bereitgestellt werden:
(benutze 'git add/rm
(benutze 'git checkout --
gelöscht: John.TXT
gelöscht: Maria.TXT
Verlorene Refs/Stash@0 (1e1968854fb5ca4d609e577822dc3280dbf928f6)
$ls
Projektdatei1.txt Projektdatei2.TXT
Und Sie haben Ihre in Arbeit befindliche "ProjectFile1".txt' und 'ProjektDatei2.txt' zurück.
Der Befehl git stash hilft Ihnen also, Ihre Arbeit zu verstauen, damit Sie später darauf zurückkommen können.
21. Git-Status
Der Befehl git status zeigt den Unterschied zwischen aktuellen Dateien und dem HEAD-Commit an.
Hier ist ein Beispiel:
$git-StatusAuf Zweigmeister
Zu verpflichtende Änderungen:
(benutze 'git reset HEAD
umbenannt: Datei2.txt -> Datei3.TXT
Änderungen, die nicht für Commit bereitgestellt werden:
(benutze 'git add
(benutze 'git checkout --
geändert: Datei1.TXT
Es zeigt, dass 'Datei2.txt“ wird in „Datei3“ umbenannt.txt', die zum Commit bereit ist, aber die Änderungen in 'File1.txt' ist noch nicht im Staging-Bereich.
Also fügen wir alles hinzu:
$git add -AWenn wir jetzt den Status überprüfen:
$git-StatusAuf Zweigmeister
Zu verpflichtende Änderungen:
(benutze 'git reset HEAD
geändert: Datei1.TXT
umbenannt: Datei2.txt -> Datei3.TXT
Wir sehen, dass alle Änderungen bereit für die Übergabe sind.
22. git tag
Der Befehl git tag hilft Ihnen, Tags für Ihre wichtigen historischen Punkte zu erstellen. Es wird im Allgemeinen verwendet, um Versionsnummern einzurichten.
Der Befehl git tag zeigt Ihnen die aktuell verfügbaren Tags an:
$git-Tagv1.0
v2.0
Sie können mit dem Befehlsformat git tag taggen
Um zu sehen, was im Tag enthalten ist, können Sie den Befehl git show verwenden:
$git show v1.0begehen 61e9e8aa1b98b2a657303e6822b291d2374314b5
Autor: Zak H
Datum: Do 22. Nov 01:06:42 2018 -0800
Erstes Commit
diff --git a/1.txt b/1.TXT
neuer Dateimodus 100644
Index 0000000… e69de29
Sie können auch einen Commit-Hash und das Befehlsformat git tag verwenden
374efe9 Geänderte Datei
a621765 Hinzufügen
6d6ed84 Zweites Commit
61e9e8a Erster Commit
$git-Tag v4.0 a621765
$git show v4.0
begehen a6217650a2c7b2531ecb9c173ba94bd4b3ba7abd
Autor: Zak H
Datum: Do 22. Nov 01:15:55 2018 -0800
Hinzufügen
diff --git a/1.txt b/1.TXT
Index e69de29… 587be6b 100644
--- a/1.TXT
+++ b/1.TXT
@@ -0,0 +1 @@
Abschließend
Für jeden Befehl können Sie git . verwenden
Weiteres Studium
- https://git-scm.com/docs