GIT-Tutorial: Kochbuch: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 7: | Zeile 7: | ||
===SHA1-Hash-Abkürzung expandieren=== | ===SHA1-Hash-Abkürzung expandieren=== | ||
< | <syntaxhighlight lang=bash> | ||
git rev-parse d4d2cea | git rev-parse d4d2cea | ||
</ | </syntaxhighlight> | ||
<pre style="color:blue"> | <pre style="color:blue"> | ||
d4d2cea2c5feecc46af985a52cc5d091e49c4708 | d4d2cea2c5feecc46af985a52cc5d091e49c4708 | ||
Zeile 15: | Zeile 15: | ||
===Inhalt eines Blobs ermitteln=== | ===Inhalt eines Blobs ermitteln=== | ||
< | <syntaxhighlight lang=bash> | ||
git cat-file -p d4d2c | git cat-file -p d4d2c | ||
</ | </syntaxhighlight> | ||
<pre style="color:blue"> | <pre style="color:blue"> | ||
Diese Datei enthält genau eine Zeile! | Diese Datei enthält genau eine Zeile! | ||
Zeile 26: | Zeile 26: | ||
===Dateien im Arbeitsverzeichnis durch den Stand in der Datenbank ersetzen=== | ===Dateien im Arbeitsverzeichnis durch den Stand in der Datenbank ersetzen=== | ||
Alle Dateien auf den aktuellen Stand des aktuellen Branches: | Alle Dateien auf den aktuellen Stand des aktuellen Branches: | ||
< | <syntaxhighlight lang=bash> | ||
git reset --hard | git reset --hard | ||
</ | </syntaxhighlight> | ||
Alle Dateien auf den Stand eines Commits, z.B. dem Tag v0.1, bringen: | Alle Dateien auf den Stand eines Commits, z.B. dem Tag v0.1, bringen: | ||
< | <syntaxhighlight lang=bash> | ||
git reset --hard v0.1 | git reset --hard v0.1 | ||
</ | </syntaxhighlight> | ||
Hinweis: Einzelne Dateien können nur dann zurückgesetzt werden, wenn der gewählte Commit einzig diese Datei enthält. Was anderes ist nicht sinnvoll, da ein Commit atomar ist. | Hinweis: Einzelne Dateien können nur dann zurückgesetzt werden, wenn der gewählte Commit einzig diese Datei enthält. Was anderes ist nicht sinnvoll, da ein Commit atomar ist. | ||
Zeile 39: | Zeile 39: | ||
===Bugfix aus einem anderen Branch übernehmen=== | ===Bugfix aus einem anderen Branch übernehmen=== | ||
Ein Bugfix umfasst genau einen Commit (3a1b2...) im Branch v1.3. Dieser soll in den Branch master übernommen werden, ohne die anderen Commits von v1.3. | Ein Bugfix umfasst genau einen Commit (3a1b2...) im Branch v1.3. Dieser soll in den Branch master übernommen werden, ohne die anderen Commits von v1.3. | ||
< | <syntaxhighlight lang=bash> | ||
git remote add origin git://f-r-e-i.de/backup | git remote add origin git://f-r-e-i.de/backup | ||
git fetch | git fetch | ||
</ | </syntaxhighlight> | ||
==Umgang mit Depots== | ==Umgang mit Depots== | ||
===Verbindung zu Depot herstellen=== | ===Verbindung zu Depot herstellen=== | ||
< | <syntaxhighlight lang=bash> | ||
git remote add origin git://f-r-e-i.de/backup | git remote add origin git://f-r-e-i.de/backup | ||
</ | </syntaxhighlight> | ||
===Verbindung zu Depot entfernen=== | ===Verbindung zu Depot entfernen=== | ||
< | <syntaxhighlight lang=bash> | ||
git remote rm origin | git remote rm origin | ||
</ | </syntaxhighlight> | ||
= Datei aus Repository entfernen (nicht löschen) = | |||
<syntaxhighlight lang="bash"> | |||
git rm --cached file1.txt | |||
git rm -r --cached .vscode/ | |||
</syntaxhighlight> |
Aktuelle Version vom 10. März 2024, 14:22 Uhr
Vorbemerkung[Bearbeiten]
Hier werden "Rezepte" vorgestellt: Typische Situationen und sinnvolles Vorgehen dafür, in Kurzform.
Kommandos auf tiefster Ebene[Bearbeiten]
SHA1-Hash-Abkürzung expandieren[Bearbeiten]
git rev-parse d4d2cea
d4d2cea2c5feecc46af985a52cc5d091e49c4708
Inhalt eines Blobs ermitteln[Bearbeiten]
git cat-file -p d4d2c
Diese Datei enthält genau eine Zeile!
Lokales Repository[Bearbeiten]
Dateien im Arbeitsverzeichnis durch den Stand in der Datenbank ersetzen[Bearbeiten]
Alle Dateien auf den aktuellen Stand des aktuellen Branches:
git reset --hard
Alle Dateien auf den Stand eines Commits, z.B. dem Tag v0.1, bringen:
git reset --hard v0.1
Hinweis: Einzelne Dateien können nur dann zurückgesetzt werden, wenn der gewählte Commit einzig diese Datei enthält. Was anderes ist nicht sinnvoll, da ein Commit atomar ist.
Mergen[Bearbeiten]
Bugfix aus einem anderen Branch übernehmen[Bearbeiten]
Ein Bugfix umfasst genau einen Commit (3a1b2...) im Branch v1.3. Dieser soll in den Branch master übernommen werden, ohne die anderen Commits von v1.3.
git remote add origin git://f-r-e-i.de/backup
git fetch
Umgang mit Depots[Bearbeiten]
Verbindung zu Depot herstellen[Bearbeiten]
git remote add origin git://f-r-e-i.de/backup
Verbindung zu Depot entfernen[Bearbeiten]
git remote rm origin
Datei aus Repository entfernen (nicht löschen)[Bearbeiten]
git rm --cached file1.txt
git rm -r --cached .vscode/