Git-Kurzreferenz für Lernende
Jeder Befehl auf dieser Seite stammt aus Mit Git entwickeln oder aus CONTRIBUTING.md,
sofern keine andere Quelle genannt ist. Drucken Sie sie aus oder legen Sie sie neben Ihr Terminal. Die Erklärungen
finden Sie in Git als Lernende nutzen.
Inhalt
- Einrichten
- Wo bin ich?
- Branches anlegen und committen
- Die Historie lesen
- Eine Änderung finden, die etwas kaputt gemacht hat
- Über einen Fork beitragen
- Auf dem neuesten Stand bleiben
- Wenn Composer sich weigert
Einrichten
| Befehl | Bewirkt |
|---|---|
composer config --global 'preferred-install.se7enxweb/*' source | Jedes Paket se7enxweb/* als Git-Klon installieren |
git clone https://github.com/se7enxweb/exponential.git exponential | Den Kernel mit seiner vollständigen Historie holen |
git switch -c my-site | Einen eigenen Branch auf main beginnen |
git switch -c my-site v6.0.14 | Einen eigenen Branch stattdessen auf einem Release-Tag beginnen |
git tag -l 'v*' --sort=version:refname | Die Release-Tags in Versionsreihenfolge auflisten |
composer install | Die Erweiterungen nach extension/<name> klonen |
Wo bin ich?
| Befehl | Bewirkt |
|---|---|
git status | Geänderte und nicht versionierte Dateien |
git diff | Die Änderungen, Zeile für Zeile |
composer status -v | Pakete mit nicht committeten Änderungen, nicht gepushten Commits oder einer anderen Version als in der Lock-Datei |
ls -d extension/*/.git | wc -l | Die Erweiterungen zählen, die Klone sind |
git -C extension/<name> status | Der Zustand einer Erweiterung („HEAD detached at v...“ ist normal) |
Branches anlegen und committen
| Befehl | Bewirkt |
|---|---|
git switch -c <branch> | Ein neuer Branch ab der aktuellen Stelle |
git add <file> | Eine Datei vormerken (beim Namen, nicht alles auf einmal) |
git commit -m "Fixed: <what>" | Mit einer Betreffzeile im Stil des Projekts committen |
git log --oneline -5 | Ihre letzten fünf Commits |
Betreffzeilen beginnen mit Added: , Updated: , Fixed: , Removed: oder Renamed: .
Die Historie lesen
| Befehl | Bewirkt |
|---|---|
git log --oneline -10 -- <file> | Die letzten zehn Änderungen an einer Datei |
git blame <file> | Wer jede Zeile zuletzt geändert hat |
git log -S "<text>" --oneline | Jeder Commit, der ein Textstück hinzugefügt oder entfernt hat |
git -C extension/<name> log --oneline -3 | Die neuesten Commits einer Erweiterung |
Eine Änderung finden, die etwas kaputt gemacht hat
git bisect start
git bisect bad
git bisect good v6.0.13
# test, then answer: git bisect good or git bisect bad
git bisect resetÜber einen Fork beitragen
cd extension/<name>
git remote add fork https://github.com/<you>/<name>.git
git switch -c <fix-branch>
git commit -am "Fixed: <what>"
git push -u fork <fix-branch>
# then open the pull request from the link GitHub prints, or: gh pr createSolange der Pull Request offen ist, wenn die Begutachtung es verlangt:
git fetch origin
git rebase -i origin/main
git push --force-with-lease # only to your own pull request branchFür den Kernel: einmal make hooks, und make manifest-fix, um share/filelist.md5 aktuell zu halten.
Auf dem neuesten Stand bleiben
| Befehl | Bewirkt |
|---|---|
git fetch origin --tags, dann git merge origin/main | Den Kernel auf Ihrem Branch aktualisieren |
composer update | Danach die Erweiterungen passend dazu |
composer update se7enxweb/<package> | Nur eine Erweiterung |
Zuerst Git, dann Composer. Der vollständige Ablauf: Mit Git aktualisieren.
Wenn Composer sich weigert
| Composer meldet | Tun Sie |
|---|---|
... has uncommitted changes. | Auf einem Branch committen, oder per Stash beiseitelegen, aktualisieren und wiederherstellen |
... has unpushed changes on the current branch | Den Branch in Ihren Fork pushen, dann aktualisieren |
You have version variations ... | Erwartet, solange Sie an einer Korrektur arbeiten; composer update <package> kehrt zum Tag zurück |
| Ein Paket ist noch ein Archiv | composer reinstall <package>; niemals von Hand mit git clone hineinklonen |
Quelle: Wenn Composer sich weigert.
Verwandte Seiten
- Git als Lernende nutzen
- Mit Git entwickeln
- Mit Git aktualisieren
- Freie Dokumentation: Diese Seite darf unter der GNU FDL 1.3 frei kopiert, übersetzt und verbessert werden.
Werden Sie Exponential-Partner
Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.