Sobes.tech
Junior

Jaký je rozdíl mezi příkazem amend a příkazem squash v Git?

sobes.tech AI

Odpověď od AI

git commit --amend upravuje poslední commit přidáním provedených změn nebo opravou zprávy commit. V podstatě nahrazuje poslední commit novou verzí a vytváří nový SHA-hash.

git rebase --interactive s volbou squash umožňuje sloučit několik po sobě jdoucích commitů do jednoho. Vyberete commity ke sloučení a Git vytvoří nový commit, který spojí všechny vybrané změny. Historie commitů je přepsána, jsou generovány nové SHA-hash pro sloučené commity a všechny následující.