DevProTalk

DevProTalk (http://www.devprotalk.com/index.php)
-   Web Hosting, web serveri i operativni sistemi (http://www.devprotalk.com/forumdisplay.php?f=11)
-   -   SVN export na FTP (http://www.devprotalk.com/showthread.php?t=7867)

Dragan Babić 15. 09. 2009. 18:58

Gorane overi http://beanstalkapp.com/ koji ti omogućava to što tražiš. Mi smo ih koristili dok nismo prešli na Git.

zira 15. 09. 2009. 19:02

Ima PHP verzija rubijevog Capistrano deployment alata, ali nisam probao. Mada planiram da cim nadjem malo vremena ispitam varijante.

http://code.google.com/p/fredistrano/

bluesman 15. 09. 2009. 19:26

Citat:

Originalno napisao Dragan Babić (Napišite 73231)
Gorane overi http://beanstalkapp.com/ koji ti omogućava to što tražiš. Mi smo ih koristili dok nismo prešli na Git.

Uh, izgleda ok, ali nešto nisam za "još jedan servis", već mi je muka i ovo što do sada koristim, ima dana kada jednostavno i ne stignem da overim sve. Da ne govorimo kolika nam je lista url-ova, username-ova i passworda.

Šta je git?

xippi 15. 09. 2009. 19:46

distribuirani version control. overi http://git-scm.com/

srdjevic 15. 09. 2009. 20:13

Ako imas dedicated web server (ili bar shell acc), onda stvarno ne vidim problem... ja sam uradio takvu skriptu za par sati.

lepo instaliras svn na taj server, napravis jedan folder da apache moz' da piskara u njega, i onda teras exec('svn export url/do/svna /path/na/www') da server lepo prevuce s drugog, izbegavas svoju (sporu) konekciju tako, serveri odradjuju posao sami....

a onda kad vec mozes svn export, krenuces da se zezas i sa svn log, pa ces za par minuta poceti da parsujes i xml logove, i onda ce ti biti jos zanimljivije, sa revision range i glupostima... sky is the limit. posle samo copy radi u public_html ili gdegod. meni ide u zipove :1094:

Edit: ako neces da se zezas sa permisama, mozes php skriptu da stavis iza HTTPauth i lepo koristis te vrednosti za autentikaciju na svn (sa dummy log call ili nesto)... ko nema svn nalog, nece moci da tera dalje, blablabla

Dragi Tata 15. 09. 2009. 20:35

Ако озбиљно узимаш предлоге за прелазак на git, проучи најпре и друге дистрибуиране системе; наводно су неки од њих лакши за коришћење и сетап: http://en.wikipedia.org/wiki/List_of...tributed_model

bluesman 15. 09. 2009. 21:48

@srdjevic: mislim si propustio da primetiš da svn nije na istom serveru na kojem je i document root. Šta više, koristimo jedan repository na jednom serveru za sve projekte koji su na bar 4 različita servera. Pored toga, ni na jednom serveru nemam shell access.

srdjevic 15. 09. 2009. 22:04

ok, ako nemas shell da podesis to, onda prica pada u vodu...

ali...
mislim da si ti propustio da primetis da postoji razlika izmedju svn klijenta i svn servera. ja pricam on instalaciji klijenta na web serveru... pa ni tvoja kucna masina nema na sebi svn server pa opet lepo prevlaci... :P

jer imas svn(.exe na win) i lepo radis komande tipa svn up, svn commit, svn log i sve to i sam (ili tortoise/whatever radi to za tebe u pozadini)...

dakle, svn(.exe), ne svnadmin. on onda lepo radi isto sto i tvoj kucni komp. moj jedan komp u intranetu cak radi i komite kad radi nove verzije (auto changelog generisanje i gluposti) tako da znam o cemu pricam, veruj mi na rec.

robi-bobi 15. 09. 2009. 22:46

ja jos uvek ne shvatam gde je problem :)

svn exportuje u lokalni tmp dir (stavio sam kod) i odatle se preko shell-a ftp-uje do www servera
to sve ide na dev server

sto se tice git-a
svi ga nesto forsiraju, koliko shvatam dobar je za projekte hde radi bas puno ljudi, nemas glavni repository, nego je to sve distributed
meni licno je jos i stari CVS radio posao kao i sad SVN, pa git koristim samo da pull-ujem neke open source projekte i to je to

edit: sad videh "ni na jednom serveru nemam shell"
ako to vazi i za dev server onda ne razumem sta bi radio inace?
svn export odakle, kome

nn.nn 15. 09. 2009. 23:22

Citat:

Originalno napisao bluesman (Napišite 73223)
Pa nije baš tako jednostavno. SVN je na jednom serveru, a document root na drugom pa ne može neki jednostavna script tipa "export u /home/site/html/".

Drugo, kada se commituje SVN, nas nekoliko radi na istom kodu, i onda umesto da uploadujemo na live site, prvo uploadujemo na test site, pa tek posle testiranja radimo upload na live. Moja ideja je da imam nešto što može recimo da odradi:

Sve novije od revizije 834 i novije uploaduj na FTP username - password - domain ...

Verovatno mnogo tražim, ali sa tim bi ovo bio kick-ass tool.

Mnogo ili ne, proof-of-concept je ovde. Nije PHP, ali verujem da će biti jasno. Bilo bi još i jednostavnije ako prethodno uradiš svn export (pozivom iz skripte).

Što se tiče FTP-a, to možda i nije najbolja strategija za deployment (naravno, zavisi i od toga šta je na raspolaganju). Čini mi se da bi se tu već pominjani Capistrano bolje pokazao (ali traži shell i ssh). Npr, možeš da uradiš i rollback, ako nešto pođe naopačke. Rešenje je jednostavno, imaš releases direktorij u kome se nalaze nekoliko poslednjih verzija aplikacije, dok je DocumentsRoot simlinkovan na poslednji release. Ako se zezneš, ima komanda koja remote obriše stari simlink i napravi novi.

Usput, još jedna dobro rešenje koje se često koristi kod deploymenta sa Capistranom - napraviš shared folder, pa pri novom releasu simlinkuješ šta treba i ne brineš o tome da će nova verzija aplikacije da obriše nešto što je potrebno/zajedničko za sve verzije.


Vreme je GMT +2. Trenutno vreme je 22:35.

Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.

Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.