Portál AbcLinuxu, 9. května 2025 19:28

Dotaz: Git: jak si pamatovat verzi hlavní větve?

Josef Kufner avatar 23.9.2009 23:28 Josef Kufner | skóre: 70
Git: jak si pamatovat verzi hlavní větve?
Přečteno: 263×
Odpovědět | Admin
Ahoj!

Mám tu jeden trochu větší projekt, který má jeden hlavní repositář a spoustu vedlejších, kde jsou vždy jen malé úpravy pro konkrétní instalace, ale jinak sledují dění ve hlavním repositáři.

A já potřebuju, aby v každém vedlejším repositáři bylo v souboru (který se pak uploadne spolu se zdrojáky) uloženo, kdy naposledy byl synchronizován s hlavním repositářem. Tedy jaký byl poslední commit v hlavním repositáři v okamžiku provedení "git pull origin".

Napadlo mě takové dosti primitivní řešení -- generování nějakého souboru v pre-commit hooku, ale to bude do každého commitu přidávat kus bordelu.

Druhá možnost by byla takový soubor udržovat ručně, ale na to jsem moc líný a bordel by nebyl v commitech, ale v logu, což je použitelné jen na nějaké celkem hrubé verzování (a to nestačí).

Nějaké nápady?
Hello world ! Segmentation fault (core dumped)

Řešení dotazu:


Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

24.9.2009 08:28 Let_Me_Be | skóre: 20 | blog: cat /proc/idea/current | Brno
Rozbalit Rozbalit vše Re: Git: jak si pamatovat verzi hlavní větve?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Mam takovy pocit ze GIT pouzivas spatne. Co myslis tim hlavni repozitar a spoustu vedlejsich? Myslis plne repa vytvorene pomoci clone, nebo jenom vetve?
Linked in profil - Můj web - Nemůžete vyhrát hádku s blbcem. Nejdřív vás stáhne na svoji úroveň a pak ubije zkušenostmi.
Josef Kufner avatar 24.9.2009 09:25 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Git: jak si pamatovat verzi hlavní větve?
Jsou to naklonované repositáře u několika lidí.
Hello world ! Segmentation fault (core dumped)
24.9.2009 18:37 Let_Me_Be | skóre: 20 | blog: cat /proc/idea/current | Brno
Rozbalit Rozbalit vše Re: Git: jak si pamatovat verzi hlavní větve?
Pak mi trochu unika smysl. Git si prece u kazde vetve pamatuje, ze ktereho mista byla forknuta. Kdyz vygenerujes patch, tak to je i v nem.
Linked in profil - Můj web - Nemůžete vyhrát hádku s blbcem. Nejdřív vás stáhne na svoji úroveň a pak ubije zkušenostmi.
Josef Kufner avatar 24.9.2009 18:58 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Git: jak si pamatovat verzi hlavní větve?
Jo to jo. Dokud to zůstane v péči gitu, tak s tím není problém. Zmatky začínají v okamžiku, kdy se ubalí balíček nebo se to někam uploadne mimo repositář. A jak se ukázalo, ID commitu z vedlejšího repositáře je víceméně na nic a udržovat .git/hooks v každém repositáři je otrava (a zapomíná se na to)... Takže by to chtělo nějak podstrčit tu informaci ještě v hlavním repositáři.
Hello world ! Segmentation fault (core dumped)
Řešení 1× (Michal Vyskočil)
Josef Kufner avatar 17.11.2009 21:48 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Git: jak si pamatovat verzi hlavní větve?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Tak řešení nakonec spočívá v použití tagů, git describe a skriptu na sestavení balíčku. Git describe produkuje velmi hezké značení, takže je velmi jednoduché si udržet přehled o jednotlivých verzích a jejich původu.
Hello world ! Segmentation fault (core dumped)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.