Autor Zpráva
MaK
Profil
Mám větev v1 a chci s ní sloučit větev v2, ale ne poslední commit z této větvě, ale konkrétní tag.
Něco takového:

git checkout v1
git merge v2/konkretni_tag

Předem děkuju!
Radek9
Profil
MaK:
Nejsem si jistý, jestli je pro to nějaké elegantní řešení, ale asi by mělo fungovat tohle:
git checkout <commit> # kde <commit> je ten příslušný tag
git branch temp
git checkout v1
git merge temp
git branch -d temp

Edit: V GUI se ta dočasná větev dá vytvořit celkem jednoduše. Prostě si vyjedeš historii, klikneš pravým na ten předposlední commit a vybereš Create new branch.
MaK
Profil
Chápu, ale stále mi nedochází, proč před commit nemusím uvádět branch?
Žádné dva commity nemohou mít shodný hash?
A tagy? Tam je pravděpodobnost vzniku dvou shodných tagů veliká.
Radek9
Profil
MaK:
Žádné dva commity nemohou mít shodný hash?
Úplně přesně nevím, jak se to generuje (mám dojem, že je to odvozeno od obsahu souboru), ale ke kolizím by docházet nemělo.

U tagů se to asi stát může, ale když tam specifikuješ přímo hash commitu, tak by problém být neměl.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: