Autor Zpráva
Stepanka
Profil *
Ahoj,

chtěla bych se zeptat - přešli jsme v práci na verzovací systém SubVersion. Údajně je to věc dobrá, ale já jsem zvyklá pracovat na testovací verzi e-shopu přímo přes FTP (nepracuju na lokále). A z testovací verze to potom zkopírovat na ostrou.

Teď ale nevím, jestli to se SubVersion půjde takhle i dál... A to se chci právě zeptat - můžu nějak vytvořit úložiště na FTP? Nebo to opravdu musí být na HDD?

Nechci tahat všechny skripty na lokál...

Moc děkuju za odpovědi.
bohyn
Profil
Stepanka
Subversion ma jeden centralni repozitar do ktereho posilas zmeny pres klienta. Testovat scripty asi budes moct tak jak ses zvykla, ale otestovane scripty budes misto do ostre verze posilat do subversion a na ostrou verzi to bude asi nahravat admin (zalezi na vnitrni politice firmy, na to se zeptej jich).

Teď ale nevím, jestli to se SubVersion půjde takhle i dál... A to se chci právě zeptat - můžu nějak vytvořit úložiště na FTP? Nebo to opravdu musí být na HDD?
Jestli myslis pracovat se subversion pres FTP klienta, tak ne. Subversion maji vlastni klienty a v souborech ze subversion repozitare by sis ani moc nepocetla :) Soubor si stahnes z repozitare, upravis a posles zpet.

Nechci tahat všechny skripty na lokál...
Staci jen ty se kterymi pracujes.
Stepanka
Profil *
bohyn
ok, díky moc.
Jan Tvrdík
Profil
Stepanka:
Trochu OT: Máš nějaký důvod nepracovat na lokálním serveru?
Stepanka
Profil *
Jan Tvrdík
Nevidím v tom žádnou výhodu. Máme ostrý a testovací server. Oba jsou stejné. Vždycky jsem vyvíjela na testovacím přžes FTP a celý úkol potom zkopírovala na ostrou verzi. Když budu vyvíjet na lokále, musím po dokončení úkolu zkopírovat skripty jak na testovací verzi, tak na ostrou... a to je kopírování navíc. Na FTP je to rychlé dost, nezabírám místo na disku.. nevidím žádné nevýhody, jen výhody... Co si o tom myslíš Ty?
ah01
Profil
Stepanka
Pokud by tímto způsobem chtělo pracovat více lidí tak to nepůjde, protože si budou vzájemně na tom FTP přepisovat kód. Ideálně to může fungovat například tak, že si každý pracuje na locale a až je se svojí prací spokojen (ta část na které pracoval funguje) udělá commit (nahraje změny) na SubVersion server. Na serveru se SVN pak je script, který automaticky kopíruje tyto změny na testovací server. Takto pak na jednom projektu může pracovat kolik chce lidí a nehrozí že si přepíšou (smažou) nějaký kód.

bohyn
„souborech ze subversion repozitare by sis ani moc nepocetla“
SVN taky může používat databáze, pak si v tom asni počíst nejde :)
bohyn
Profil
ah01
SVN taky může používat databáze, pak si v tom asni počíst nejde :)
At pouziva jednotlive soubory nebo DB, stejne se v tom nevyznas :)
tiso
Profil
Stepanka [#5] - takto to nefunguje, žiadne kopírovanie naviac nebude. Stačí správne nastaviť verzovanie (doplním [#6]):
1. vývoj na lokálnej kópii (localhost, dev server)
2. lokálna kópia --> svn repository
3. svn repository --> testovací server
4. testovanie
5. svn repository --> live server

edit: teraz je to pochopiteľnejšie, moc som to skrátil.
Stepanka
Profil *
tiso
Ale přece pokud dáš commit nějakých skriptů, nahrají se do repozitáře, ale na žádném FTP umístění se nepřepíšou. Tam je pak musím ručně nakopírovat...
srigi
Profil
Stepanka
Ale přece pokud dáš commit nějakých skriptů, nahrají se do repozitáře, ale na žádném FTP umístění se nepřepíšou. Tam je pak musím ručně nakopírovat...

Ano spravne. Na testovacom serveri musis vytvorit samostatnu wokrking-copy (checkout) projektu. Takze projekt bude obsluhovany takto:

developer           repo            test-server
    ^---[checkout]---O---[checkout]-----^

[kodenie]

     O---[commit]----^

                     O---[svn update]---^


Cize, ked vykonas nejaku zmenu, musis ako spravne predpokladas vykonat kroky dva. Je to sice na prvy pohlad komplikacia a horsie ako povodne, ale je to jedina moznost ako moze nad projektom pracovat viac ludi. Okrem toho SVN poskytne moznosti "casoveho stroja" - navrat k lubovolnej predoslej verzii subora, prehlad zmien a pod.
ah01
Profil
Stepanka
Asi ještě jedna důležitá věc, kterou jsem nezdůraznil. Ty můžeš u SVN (na serveru) nastavit tzv. hook - tedy nastavit si co se stane při různých událostech SVN. Například napsat si skript, který v případě že někdo udělá commit, tak provede na serveru checkout a nakopíruje zdrojáky přes FTP na test server.

Takže tomu kopírování ze SVN na FTP se nevyhneš, ale nemusí to nutně dělat nějaký člověk ručně :)
tiso
Profil
Stepanka - jedno zásadné pravidlo pri práci so SVN: zabudni na kopírovanie. Všetky zmeny (pridávanie, zmena, mazanie, premenovanie) súborov a adresárov medzi jednotlivými počítačmi (presnejšie pracovnými kópiami) musia prebiehať cez SVN, ako názorne predviedol srigi. Prečítaj si o tom viac.
Sik
Profil *
Takže odhledně použití repository na FTP: Možné to je a dokonce docela jednoduché. Stačí na lokále mít Subversion server a v systému si namapovat FTP jako disk... Pak už stačí jen vytvořit repository na namapovaném disku a pracovat normálně se subversion pomocí svého klienta... Je to sice trochu kostrbaté řešení ale funguje.

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

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

0