< Git

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