Tartalomjegyzék
A git HEAD
- Szerző: Sallai András
- Copyright © 2021, Sallai András
- Szerkesztve: 2021, 2022, 2023
- Licenc: CC BY-SA 4.0
- Web: https://szit.hu
A HEAD
A HEAD megmutatja éppen hol tartunk.
A következő ábrán két ág van, a master és a dev1. A dev1 ágon áll HEAD, vagyis amikor dolgozunk ezen az ágon fejlesztünk.
A gyakorlatban:
$ git log --oneline a1df0d1 (HEAD -> master) Barack hozzáadva 54941b7 Körte hozzáadva 367a09d Kezdés
Szimbólumok
A következő táblázat bemutatja, hogyan egészíthetjük ki a HEAD szimbólumot a parancsainkban, és annak milyen hatásai vannak.
HEAD | Az utolsó commit |
HEAD~ | HEAD~1 rövidítés |
HEAD~1 | A commit első szülője |
HEAD~~ | A commit első szülőjének, első szülője |
HEAD~2 | A commit első szülőjének, első szülője |
HEAD^ | A HEAD^1 rövidítése |
HEAD^1 | A commit első szülője |
HEAD^2 | A commit második szülője (A commit két szülője van merge után) |
A HEAD követi a munkánk
Készítsünk egy projektet. Készítsük hozzá Git tárolót:
mkdir app01 cd app01 git init
Készítünk egy állományt, amibe az „apple” szót írjuk; készítünk róla pillanatképet (commit):
echo apple > gy.txt git add gy.txt git commit --message "Add apple" git log --oneline 7b425d8 (HEAD -> master) Add apple
Most az állomány végéhez fűzzük a „pear” szót, majd újra pillanatképet készítünk (commit):
echo pear >> gy.txt git commit --all --message "Add pear" 422daec (HEAD -> master) Add pear 7b425d8 Add apple
Az állomány végéhez fűzzük a „plum” szót, majd pillanatképet készítünk a projektről:
echo plum >> gy.txt git commit --all --message "Add plum" git log --oneline 929da7a (HEAD -> master) Add plum 422daec Add pear 7b425d8 Add apple
log
Most nézzük meg a HEAD használatát „git log” mellett:
git log --oneline 929da7a (HEAD -> master) Add plum 422daec Add pear 7b425d8 Add apple
Most használjuk a HEAD szimbólumot:
git log --oneline HEAD 929da7a (HEAD -> master) Add plum 422daec Add pear 7b425d8 Add apple
Ugyanaz történik, mivel ez az alapértelmezés.
Most használjuk a ~1 kiegészítést. Azt jelenti az aktuális commit első szülőjét szeretnénk:
git log --oneline HEAD~1 422daec Add pear 7b425d8 Add apple
Az eredményben nem látjuk viszont az utolsó commitot, csak az előtte lévőket.
Az 1-s elhagyható:
git log --oneline HEAD~ 422daec Add pear 7b425d8 Add apple
Ha a két utolsó commitot szeretném elhagyni:
git log --oneline HEAD~2 7b425d8 Add apple