- Úvodní stránka
- » Diskuse o vývoji frameworku
- » Přechod Subversion (SVN) → Git
#51 15. 8. 2009 12:33
- Petr Motejlek
- Nette guru
- Registrovaný: 9. 1. 2009
- Příspěvky: 283
Re: Přechod Subversion (SVN) → Git
No lol — co začalo jako přechod mezi SVN a Mercurial, skončilo jako přechod mezi SVN a GIT — škoda, že mě víc zaujal Mercurial…
Offline
#52 15. 8. 2009 15:25
- Ondřej Brejla
- Nette guru

- Místo: Praha
- Registrovaný: 20. 4. 2008
- Příspěvky: 439
- Web
Re: Přechod Subversion (SVN) → Git
Co prosím? Pokud jsem správně četl, tak David zkouší obě varianty, protože si sám není jist, co je to pravé ořechové…
Nač stahovat kalhoty, když brod je ještě daleko, že ano ;-)
Offline
#53 15. 8. 2009 16:02
- David Grudl
- Administrator

- Registrovaný: 8. 2. 2005
- Příspěvky: 4050
- Web
Re: Přechod Subversion (SVN) → Git
Teď se dívám, že na http://github.com/…mmits/master si ty revize nějak číslují, zajímalo by mě jak.
Offline
#54 15. 8. 2009 19:48
- Petr Motejlek
- Nette guru
- Registrovaný: 9. 1. 2009
- Příspěvky: 283
Re: Přechod Subversion (SVN) → Git
Warden napsal(a):
Co prosím? Pokud jsem správně četl, tak David zkouší obě varianty, protože si sám není jist, co je to pravé ořechové…
Nač stahovat kalhoty, když brod je ještě daleko, že ano ;-)
Viz post #41 ;) Stejně je to ale jedno; možná je dokonce i lepší, že Nette bude na Gitu, alespoň budu moct přihodit Nette přímo do projektu i s metadaty Gitu a občas udělám pull & update Nette na novou verzi, kterou po odzkoušení commitnu do Mercurial repository projektu ;).
Offline
#55 15. 8. 2009 19:57
- Ondřej Brejla
- Nette guru

- Místo: Praha
- Registrovaný: 20. 4. 2008
- Příspěvky: 439
- Web
Re: Přechod Subversion (SVN) → Git
To je sice zajímavý post, ale to ještě David nevěděl, jaká to bude mít všelijaká úskalí, takže jak to dopadne se ještě neví ;-) Ale ono to nějak dopadne…:-)
Offline
#56 16. 8. 2009 3:05
Re: Přechod Subversion (SVN) → Git
David Grudl napsal(a):
Teď se dívám, že na http://github.com/…mmits/master si ty revize nějak číslují, zajímalo by mě jak.
Vypadá to že si jen čísla revizí sami píšou do komentářů ke commitům ;]
Jinak ten github je až k breku pomalej, a to jak „vygenerování“ stránky tak při renderování stránky mi na několik vteřin zamrzne i celej prohlížeč… ;/
Offline
#57 16. 8. 2009 9:45
- Nilp
- Člen
- Registrovaný: 11. 5. 2009
- Příspěvky: 30
Re: Přechod Subversion (SVN) → Git
Problemy s rychlosti jsou u GitHubu celkem zname, ale zda se ze se nejak resi, viz treba http://support.github.com/…me-very-slow. Jinak dalsi repository hosting pro Git je napr. Gitourious.
Editoval Nilp (16. 8. 2009 9:51)
Offline
#58 16. 8. 2009 11:37
- Jerry123456789
- Člen

- Registrovaný: 29. 12. 2008
- Příspěvky: 37
Re: Přechod Subversion (SVN) → Git
Jen takovej nápad k číslování revizí – na commit si na GitHubu zavěsit hook-script (např na nette.org) který dostane json informace o repository a commitu atd. (více v Guides). Ten by přidal do pole (např serializovaného do souboru) info ve tvaru cislo_prave_pridane_revize ⇒ hash_prave_pridane_revize (cislo získat z komentáře regexpem, jako u toho mangosu). Takže by bylo možné jednoduše převádět mezi číslem revize a jejím hashem (třeba url http://nette.org/hash2rev/562 a /rev2hash/…, kvůli dostupnosti i na ne-nette webu, nebo na foru/nette webu funkcemi(možná i jako dodatek k Texy syntaxi (jen tady na fóru/dokumentaci))).
42
Offline
#59 16. 8. 2009 22:58
Re: Přechod Subversion (SVN) → Git
Jenom by me zajímalo jak vyřeší se verzovaní v dokumentaci (phpdoc).
/** * @version $Id$ */
Právě kvůli tomuto problému jsem migroval projekty na Mercurial a ne na Git. Nechtělo se mi vracet se k ručnímu číslování. Linus má svůj názor k čemu RCS keywords a tak ani do budoucna se podpory v Gitu asi nedočkáme.
Offline
#60 18. 8. 2009 16:31
- David Grudl
- Administrator

- Registrovaný: 8. 2. 2005
- Příspěvky: 4050
- Web
Re: Přechod Subversion (SVN) → Git
Zjišťuju, že jsem asi udělal blbost, když jsem nechat SVN přeimportovat do Gitu přes GitHub a ne přes git-svn, protože jsem si tím odřízl možnost zpětně mirrorovat změny na SVN. Takže asi nezbude než SVN definitivně poslat do věčných lovišt…
Na druhou stranu, proč vlastně SVN udržovat? Samotný GitHub nabízí dostatek prostředků, jak se zdrojáky pracovat, aniž by člověk Git měl (včetně stažení klonu jako archivu ZIP). Pro případ, že se rozhodne Git použít připravím lehký úvod k instalaci na stránku [download]. Vytvoření klonu je stejně snadné jako u SVN.
Posledním „důvodem“ zůstává svn:externals. Píšu v uvozovkách, protože automatické používání night build není zrovna košér praktika. Tady asi nezbude než je nahradit za volání odpovídajícího git příkazu.
(ps. teoreticky by možná šlo Git znovu převést do SVN)
Offline
#62 18. 8. 2009 17:22
Re: Přechod Subversion (SVN) → Git
Zrovna jsem se chtěl zeptat, zda by šlo GIT mirrorovat zpět na SVN :) No co už, holt nainstaluji TortoiseGit.
Offline
#63 18. 8. 2009 18:38
- Honza Kuchař
- Moderator

- Místo: Brno
- Registrovaný: 12. 8. 2007
- Příspěvky: 1285
- Web
Re: Přechod Subversion (SVN) → Git
A nešel by napsat nějaký skript co by třeba přes exec vždy překopičil změny na SVN?
Offline
#64 18. 8. 2009 18:50
- David Grudl
- Administrator

- Registrovaný: 8. 2. 2005
- Příspěvky: 4050
- Web
Re: Přechod Subversion (SVN) → Git
Napiš, použiju ho.
Offline
#65 19. 8. 2009 10:51
- Petr Motejlek
- Nette guru
- Registrovaný: 9. 1. 2009
- Příspěvky: 283
Re: Přechod Subversion (SVN) → Git
Nemám problém s tím, že je to na Gitu, jen ještě k tomu svn:externals — svn:externals se hodí, když projekt vyvýjí více lidí a někdo si dá tu práci, aby přes svn:externals nechal automaticky stahovat nějaký tag (verzi), se kterou zbytek aplikace v pohodě běží. Když jsem někde výše psal, že je škoda, že svn:externals není, neměl jsem na mysli, že nejde automaticky stahovat nejnovější verzi Nette, vadí mi, že teď, když přijde vývojář, tak musí stáhnout projekt, kde bude pracovat a pak ručně dostahovat správné verze Nette a Dibi ;). S svn:externals to šlo automatizovat na jeden svn checkout, který tomu člověkovi automaticky sosnul i správné verze Nette a Dibi — nicméně jak určitě někdo navrhne, i tohle se dá řešit jinak, podle mě by to mělo umět řešit nějak IDE už v rámci projektu (který si tak jako tak ten vývojář stejně musí stáhnout) — někde tam by mělo být napsáno, že projekt vyžaduje Nette a Dibi ve specifických verzích, které jdou nalézt na svých repozitářích — fakt ale nevím, jestli tohle nějaké samotné IDE řešit umí, troufal bych si říct, že by něco takového šlo řešit přes Maven, ale když jsem tuhle experimentoval s jeho podporou pro PHP, docela slušně jsem narazil :(.
Další, co mě docela zarazilo je následující: v repozitářích Nette i Dibi to je tak, že hned v kořeni je spousta věcí, které běžně vůbec nepotřebuju — extras, examples, 3rdParty, atd. — u svn jsem mohl checkoutovat např. nette.googlecode.com/svn/trunk/Nette a stáhlo se mi jen čisté Nette, bez příkladů apod. U Dibi je to to samé, tak jsem checkoutoval dibi.googlecode.com/svn/trunk/dibi a dostal jsem jen Dibi. Git tohle neumí (Nejspíš je to dáno tím, že metadata nejsou jako u Svn v celém stromu, ale jen v kořeni, který by se nestáhl, kdybych checkoutnul jen podadresář.), když nad tím ale přemýšlím, je otázka, jestli je vůbec dobře mít to takhle pohromadě v jednom repozitáři; vím, že ty věci spolu úzce souvisí (Nette příklady si bez samotného Nette pustím asi špatně.). Díky tomu, že vytvoření nového repozitáře „nic nestojí“ bych byl pro zvážení, jestli neudělat těch repozitářů víc — třeba jen Nette (kde budou fakt jen zrdojáky Nette) a Nette-additional (kde bude zbytek) — to stejné pro Dibi.
EDIT: Omlouvám se za dlouhý příspěvek :).
Editoval Petr Motejlek (19. 8. 2009 10:59)
Offline
#66 19. 8. 2009 11:38
- romansklenar
- Moderator

- Místo: Ostrava
- Registrovaný: 20. 7. 2008
- Příspěvky: 769
- Web
Re: Přechod Subversion (SVN) → Git
Ještě Davide svn repozitář na google codu nezabíjej prosím :) pokud budeš při vývoji na gitu používat tagování nějakých větších releasů jako 0.9.1 atd, tak se nabízím k tomu, že budu importovat tyto releasy do SVN pod tagy alespoň pro stable verze a tím je situace s externals vyřešená.
Offline
#67 19. 8. 2009 18:46
- David Grudl
- Administrator

- Registrovaný: 8. 2. 2005
- Příspěvky: 4050
- Web
Re: Přechod Subversion (SVN) → Git
romansklenar napsal(a):
Ještě Davide svn repozitář na google codu nezabíjej prosím :) pokud budeš při vývoji na gitu používat tagování nějakých větších releasů jako 0.9.1 atd, tak se nabízím k tomu, že budu importovat tyto releasy do SVN pod tagy alespoň pro stable verze a tím je situace s externals vyřešená.
V podstatě to tak dělám – komituju tam stable release s dovětkem, že repozitář se přesunul.
Offline
#68 19. 8. 2009 23:05
- Petr Motejlek
- Nette guru
- Registrovaný: 9. 1. 2009
- Příspěvky: 283
Re: Přechod Subversion (SVN) → Git
Ještě mě napadla jedna věc — když se tady řešily ty hooky pro nové tagy, napadlo mě něco, co myslím, je zajímavější: všiml jsem si, že minified verze nejsou k dostání v Git repozitáři, ale pouze na stránkách Nette (a Dibi) v sekci Download — vím, že David používá nějaký skript na minifikaci; šlo by ten skript hooknout na každý commit? Automaticky by se mohly generovat minified verze ;).
Offline
#69 20. 8. 2009 0:53
- David Grudl
- Administrator

- Registrovaný: 8. 2. 2005
- Příspěvky: 4050
- Web
Re: Přechod Subversion (SVN) → Git
Chtěl jsem to tak dělat (už na SVN), ale nepodařilo se mi na serveru zprovoznit generování phpDoc.
Offline
#70 20. 8. 2009 8:33
- Petr Motejlek
- Nette guru
- Registrovaný: 9. 1. 2009
- Příspěvky: 283
Re: Přechod Subversion (SVN) → Git
K čemu ten phpDoc používáš? Nenapadlo by mně, že pro generování minified verze to budeš potřebovat ;).
Offline
#71 20. 8. 2009 18:07
- David Grudl
- Administrator

- Registrovaný: 8. 2. 2005
- Příspěvky: 4050
- Web
Re: Přechod Subversion (SVN) → Git
Pro minified verzi samozřejmě potřeba není. Chtěl jsem na server přesunout kompletní generování distribučních balíčků včetně API dokumentace a spouštět je přes post notifikaci, ale tím, že jednu část musím stále generovat na svém komplu, to ztratilo na efektivitě.
Offline
#72 20. 8. 2009 20:01
- Petr Motejlek
- Nette guru
- Registrovaný: 9. 1. 2009
- Příspěvky: 283
Re: Přechod Subversion (SVN) → Git
Tomu rozumím, to musí být otrava…
Offline
#73 21. 8. 2009 14:36
#74 23. 8. 2009 11:46
- jasir
- Nette guru

- Místo: Praha
- Registrovaný: 4. 12. 2008
- Příspěvky: 626
Re: Přechod Subversion (SVN) → Git
Když už je Nette na githubu, nestálo by za to začít používat i integrovaný Issue Tracker? Takto jsou bygy často skrýté někde na fóru, jejich hlášení se opakují a je poměrně komplikované udržet si přehled co je a co není fixnuto.
Offline
#75 21. 11. 2009 4:56
- jasir
- Nette guru

- Místo: Praha
- Registrovaný: 4. 12. 2008
- Příspěvky: 626
Re: Přechod Subversion (SVN) → Git
Je zajímavé si toto vlákno si přečíst po téměř 4 měsících pročítat. Myslím, že všechny obavy s používání Gitu padly, nezaznamenal jsem zde na fóru jediný problém. Git já osobně nyní používám už 8 měsíců a jsem navýsost spokojen. Docela hodně by mě zajímalo, kolik lidí tady z fóra se na základě (nejen) tohoto vlákna rozhodli přejít na Git a jak jsou spokojeni oni…
Já se v podstatě potýkám (dělam na Windows) jen s různými konci řádků CR/LF, které se někdy prostě rozhodnou chovat divně. Většinou to napravím pomocí config directivy autocrlf, ale nějak jsem asi nepochopil její význam, někdy tam musí být input, někdy true, někdy false :-), už jsem z toho volaký zmatený. Nevíte někdo jak tohle jednou provždy vyřešit?
Petr Motejlek napsal(a): Další, co mě docela zarazilo je následující: v repozitářích Nette i Dibi to je tak, že hned v kořeni je spousta věcí, které běžně vůbec nepotřebuju — extras, examples, 3rdParty, atd. — u svn jsem mohl checkoutovat např. nette.googlecode.com/svn/trunk/Nette a stáhlo se mi jen čisté Nette, bez příkladů apod.
a pak tento „pseudo“ problém. Sám ho řeším tak, že mám v hlavních adresářích nette,dibi soubor netterobots.txt zakazující přístup do examples apod. Myslím, že by to ani v distribuci ničemu neuškodilo.
Jinak co se týče nástrojů, TortoiseGit nyní prakticky využívám ke změně ikonek v systému, nejlépe se mi pracuje v příkazové řádce a git-nativním grafickém nástroji (tak 70% ku 30% pro shell).
A na závěr takový malý tip pro uživatele PhpEdu : hoďte si do gitu jeho configurační adresář.
Editoval jasir (21. 11. 2009 5:03)
Offline
- Úvodní stránka
- » Diskuse o vývoji frameworku
- » Přechod Subversion (SVN) → Git


