Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: CVS - nie do końca wszystko jasne
Forum PHP.pl > Inne > Komputery i oprogramowanie
athabus
Witam,

wczoraj wieczorem stwierdziłem, że czas przenieść się na wyższy poziom programistyczny i zainstalowalem sobie CVSNT biggrin.gif
Generalnie wszystko ladnie smiga (uzywam go z phpEclipse) tylko mam maly problem koncepcyjny z logika stosowania. Prosilbym o skorygowanie czy dobrze rozumiem idee CVS.

Otoz tak mamy HEAD, VERSION i BRANCH
- HEAD to wersja "produkcyjna" mojej aplikacji, ktora w danej chwili moze byc uznana za najbardziej aktualna wersje nadajaca sie do czegokolwiek
- VERSION to wersja HEAD (taki MILESTONE). Czyli np wersje robie sobie, gdy postanawiam rozwinac jakas nowa funkconalnosc itp. - mozna wiec uznac ze VERSION to jest taki twor w miare statyczny - cos jak punkt przywracania systemu w WinXP
- BRANCH - to "wersja robocza" w ktore w danej chwili chce sobie cos poprawiac, dodawac nowe funkcjonalosci itp. Czyli taki brudnopis z ktorego moge na koncu wylapac to co mi sie podoba i dodac go do Wersji.

Teraz rozumiem ze rozwijam sobie dana Galaz i w momencie gdy stwierdzam ze jest ona gotowa/cos mi sie w niej podoba itd - to to co jest dobre lacze sobie z najaktualniejsza wersja - ktora automatycznie jest wersja glowna (HEAD) mojej aplikacji.

Ok - to tyle co z tego rozumiem - Pytanie czy jest to zgodne z prawda bo jeszcze to troche dla mnie zagmatwane sie momentami wydaje:-)

Bede wdzieczny za kazda korekte mojego toku rozumowania.
dr_bonzo
Przenosze na Komputery i Oprogramowanie
em1X
pomogę Ci się przenieść na jeszcze wyższy poziom i pokażę, co to SVN, czyli doskonalszego brata CVS biggrin.gif tongue.gif biggrin.gif
SubVersion

klient nakładka na menu kontekstowe windows
Tortoise SVN

gdybys miał jakies problemy z instalacja/konfiguracja tudziez dzialaniem pisz smialo
milej zabawy
athabus
biggrin.gif Dzięki już niedługo się przesiądę pewnie.
Z CVS korzystam bo w Eclipse jest wbudowan obsluga ale slyszalem ze SubVersion też się da "podłączyć".
Na razie jednak spróbuje się zapoznać z CVS (z czystego lenistwa bo nie chce mi sie teraz przekopywac przez nowe pluginy, opisy itp).

A powiedz mi czy rzeczywiscie jest az taka roznica miecy subversion i cvs?
em1X
Z czystego lenistwa to powinienes sie na SVN przenieść.
SVN to z założenia udoskonalony CVS - pozbawiony jego wad.
athabus
Ok no to instalujemy biggrin.gif

Subclipse (Plugin do Eclipse) juz sie sciaga biggrin.gif

Zainstalowalem i wszystko smiga bardzo ladnie...

Jeszcze szczegolnej roznicy nie widze - poza tym ze jest znacznie wiecej opcji - jak zrozumiem do czego sluza to pewnie zrozumiem roznice biggrin.gif

Pierwsze wrazenie - znacznie poreczniejsze niz CVS i znacznie lepsza dokumentacja wiec nauka pojdzie szybko biggrin.gif

Moje pytanie z pierwszego posta zostaje nadal aktualne - czy dobrze rozumiem idee kontroli wersji (galezie, wersjie itd) czy cos myle?
FiDO
Sadze, ze po przeczytaniu handbooka do SVN wszystko Ci sie rozjasni. Terminy, ktore opisales w SVN'ie nazywaja sie troche inaczej, ale w sumie i tak mniej wiecej do tego samego sie to sprowadza.

http://svnbook.red-bean.com/nightly/en/index.html
Polecam na poczatek rozdzialy od 1 do 4 (w takiej wlasnie kolejnosci), reszte jak juz bedziesz mial to w miare obeznane.
Sam dopiero niedawno uczylem sie ideii systemow wersjonowania plikow i wybor padl wlasnie na SVN'a. Manual, do ktorego linka podalem jest napisany bardzo przystepnym jezykiem. Najdalej po kilku dniach bedziesz juz w miare biegly w tym co i jak. Na poczatek polecam zassac jakis aktualny projekt do SVN'a i poprobowac pisac samemu, zeby wyrobic sobie podstawowe nawyki (Update, Commit itp.).
Ja wciagnalem w to jeszcze kolege z grupy i od jakiegos czasu staramy sie uzywac SVN'a nawet do projektow uczelnianych. Jak nam serwer zdechl na 2 dni to czulismy sie troche jak bez reki.. to uzaleznia winksmiley.jpg

Prawdziwa moc SVN'a ujawnia sie dopiero jak zaczynasz pracowac z kims i trzeba robic synchronizacje plikow (albo rozwiazywac konflikty). Tutaj wychodzi spora przewaga nad CVS'em.. zreszta poczytaj propagande z manuala, tam jest to ladnie na przykladach opisane.
athabus
Dzięki Fido - dotarłem już do tej ksiażki gdy pobierałem SVN - faktycznie jest fajnie napisana.

Próbowałem trochę walczyć z SVN i na początku nawet mi się podobało, ale ostatecznie chyba jednak zostanę przy CVS - używam PHPEclipse i wydaje mi się, że CVS jest lepiej zintegrowany - przy SVN pojawiaja mi sie jakies dziwne pliki w projekcie (jakies wersje tymczasowe itp), które potem się nie usuwają i generalnie robi mi się mały burdel sadsmiley02.gif

Zresztą póki co marne szanse, żebym z kimś współdzielił moje projekty, CVS jest tylko dla mnie, żeby sobie jakoś lepiej organizować projekty - Głównie chodzi mi o rozwijanie nowych funkcji jednocześnie mając możliwość edytowania wersji produkcyjnej. Już mnie zaczęło denerwować ciągłe kopiowanie całego projektu, bo gubiłem się która wersja jest aktualna biggrin.gif

Po dniu zabawy z CVS i SVN muszę przyznać, że to bardzo fajna rzecz... Cały czas jeszcze walczę co kiedy i gdzie zrobić, ale już osiągam poziom w którym CVS robi to co ja mam na myśli... no może w 90% biggrin.gif Mimo wszystko trochę to na początku trudno ogarnąc co z czym połączyć i w jakiej kolejności biggrin.gif

Jutro zrobię drugie podejście do SVN, bo teraz wiem już trochę więcej niz kilka godzin temu więc może mi lepiej pójdzie, ale coś mi się wydaje, że problem leży w pluginie do Eclipse mimo wszystko.
FiDO
Nie sadze. Tez uzywam Subclipse'a do jednego projektu i jest wszystko ok. Moze napisz konkretniej jaki jest problem, podaj wiecej szczegolow. Postaram sie w miare mozliwosc pomoc.
athabus
Cytat
Tez uzywam Subclipse'a do jednego projektu i jest wszystko ok

W takim razie musze jeszcze raz sprobowac.

Problem byl bardzo dziwny. Po prostu przy wykonywaniu laczenia galezi w projekcie w Eclipse pojawily sie kopie wszystkich plikow z galezi (bodajze z rozszerzeniem temp) + jakies archiwa (nie pamietam juz jakie mialy rozszerzenie).

Dodatkowo czesto przy probach laczenia wyskakiwaly mi jakies wyjatki Eclipse.

Wiem ze z takim opisem problemu nic nie da sie doradzic biggrin.gif ale pozno juz bylo i nie mialem juz glowy zeby dokladnie zbadac sprawe. Dzisiaj jeszcze raz zainstaluje subversion, stworze repozytorium i bede dzialal...

Jesli znowu beda problemy to bede relacjonowal na biezaco biggrin.gif

//edit

No i wszystko jasne biggrin.gif To zdecydowanie byl moj blad. Te pliki o ktorych pisalem to kwestia konfliktu przy laczeniu galezi - wystarczylo rozwiazac konflikt i po sprawie biggrin.gif

Subversion mi sie podoba - roznica w pracy samodzielnej moze nie jest duza (w porownaniu z CVS - bo bez zadnej kontroli wersji to roznica jest ogromna), ale po przeczytaniu handbook'a system jest dla mnie zrozumialy.

Gdyby ktos chcial sprobowac swoich sile to moja rada : zacznij od handbooka + praca z linia polecen (ewentualnie GUI dostepne na stronie) - mnie troche polozylo ze chcialem od razu stosowac kontrole wersji w gotowych poleceniach - niestety to narzedzie wymaga troche oswojenia i poznania go "od srodka". Ale oplaca sie biggrin.gif

@FiDO - teraz juz rozumiem o co chodzilo z tym "bez reki" - jescze nie stosuje subversion w gotowych rozwiazaniach, ale widze ze trudno bylo by przestac stosowac to narzedzie po pewnym czasie
FiDO
Ciesze sie, ze udalo sie rozwiazac problem. Ja wybralem SVN'a po analizie narzedzi dostepnych na rynku.. Wbrew pozorom takich systemow sa dziesiatki.. ale dla mnie musial on byc dosc popularny (zeby byl sensowny support), nie miec wad CVS'a, byc darmowy i zeby sie dalo zainstalowac serwer na windowsie. SVN wszystkie te warunki spelnia.
Kiedys moje wersjonowanie polegalo na spakowaniu katalogu projektu i umieszczenie daty w nazwie smile.gif Teraz widze, ze to bylo co najmniej glupie (jakiekolwiek roszady w tym byly raczej niewygodne, a i sama synchronizacja zdecydowanie bardziej pracochlonna).
Uzaleznienie od tego typu narzedzi zapewne troche Ci urosnie z czasem.. zobaczysz smile.gif
ARJ
troszkę off-topic ale chodzi o SVN.
używam zend studio 4.0.0 i obsługuje ono tylko CVS, dopiero nowsza wersja 5 obsługuje SVN i teraz nasuwa się pytanie czy moja licencja z wersji 4 nadal będzie działać na 5?
bo tak jak @athabus miałem zamiar zabrać się za cvs ale w takim razie skoro polecacie svn to nim się zainteresuje tylko problem z użyciem biggrin.gif
athabus
ARJ może to nie będzie odpowiedź do końca na Twoje pytanie, ale razem z SVN możesz zassać sobie TortoiseSVN - taki GUI dla SVN- ładnie integruje się z z Ekspolratorem plików - moim zdaniem używa się go bardzo wygodnie więc nawet jeśli nie obsługuje go Zend to możesz sobie spokojnie poradzić biggrin.gif

Ja ze swojej strony polecam Eclipse + PHPEclipse + SubEclipse + kilka innych pluginow - nie ma to jak OpenSource - po poskładanie wszystkiego do kupy wychodzi całkiem przyjemne środowisko biggrin.gif

PS jeśli to twoje pierwsze narzędzie do kontroli wersji to od razu instaluj subversion - ma darmową książkę przystępnie napisaną, wyjaśniającą wszystko po kolei co i jak (link w poście FiDO gdzieś wyżej)- wbrew pozorom na początku posługiwanie się CVS/SVN nie jest do końca intuicyjne
ARJ
sprawdziłem i licencja z Zend Studio 4 pasuje do wersji 5. nowa wersja ma wsparcie dla cvs i svn. jednak mam z tym problem gdy daje svn checkout, pojawia się okienko i nie wiem co mam tam wpisać. może ktoś z was wie?
athabus
Na poczatek musisz zalozyc sobie repozytorium. Potem (jesli korzystasz lokalnie) wystarczy tak:

module url: ftp:///sciezka_do_repozytorium
working directory: sciezka do katalogu w ktorym chcesz trzymac plik nad ktoryi obecnie pracujesz (standardowo pewnie bedziesz mial katalog z projektem gdziesz w htdocs)
user: uzytkownik repozytorium (podajesz go przy zakladaniu repozytrium)
password: haslo jw

Tak chyba zadziala
em1X
Module url: svn://serwer.com/repozytorium
Revision: 1 (pobierze wszystkie pliki)
Sh4dow
Nie wiem, moze nie umiem poslugiwac sie SVN'em ale jak na razie jedyne co robi to przeszkadza mi to troche. SVN jest, ma lepsza konsole od CVS'a, ale CVS ma duzo lepsze aplikacje okienkowe. Pod linuxem to juz jakis koszmar obslugiwac okienkami SVN'a.
Osobiscie wole CVS'a, Wszystko to kwestia checi nauki. Zreszta nie przemawia do mnie wersjonowanie w SVN'ie.
To takie osobiste odczucie. party.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.