melyik verziokoveto rendszert?

Fórumok

Eljott az ideje, hogy komolyan megfontoljam egy ilyennek a hasznalatat. Ti milyet javasoltok?

Az igenyeim:

- konnyu hasznalhatosag (cmdline ok)
- biztonsagos
- egyszeru (nem kell hozza apache 2.2 + mod_dav, vagy millio egzotikus library)
- tavolrol is elerheto (esetleg csak read-only) repository
- ...

Hozzászólások

git, hg?
--
'Please, just tell people to use Windows.' - Linus Torvalds on KDE and GNOME
Registered M$funboy #006 (vigyázat: memetikai dágvány!!!11)

subversion-t (SVN) tudom én is ajánlani, azt használom megelégedéssel. Ha éppen nem szeretnél commandline-on parancsolgatni, akkor van hozzá jól működő GUI (kdesvn, rapidsvn ...) vagy win-en tortoiseSVN. Biztonságos, és egyszerű.

Viszont, ha nagyon nagy projektet akarsz akkor git (http://git.or.cz/), mert jobban kezelei a nagy mennyiségű fájlt (10000+), bár a git elég tárhelyigényes, mert minden munkakönyvtár egy repository.

Létezik még a GNU-RCS (Revision Control System), de azt nem használtam még, ezért nem is tudom ajánlani.

üdv!
________________________________________________
Debian 4.0 - linux-2.6.21-smp-cfs - KDE 3.5.5

Szerintem jelenleg az SVN a legkézreállóbb, használtam/lom https-sel is meg ssh-val is, 1xű és nem kell hozzá semmi.

Mi CVS-t használunk Eclipse-szel. Ennél egyszerűbb és kényelmesebb szerintem nem lehet. Persze más eszközökhöz is van integrált CVS kliens, ha épp nálad az Eclipse nem játszik.

Egyébként a kérdésed szerintem hasonlít a "Melyik linux disztribuciót válasszam?" kérdéshez. A válasz: amelyiket a környezetedben használnak, illetve amihez könnyen és gyorsan tudsz segítséget kapni.
Ha most kezdesz el verziókövetőt használni, akkor szinte mindegyik megfelel majd neked.

Pl. SVN esetében az egyszerre commit-olt források tranzakcióban vannak kezelve, tehát rész-kommit nem létezik, és egy commit-tranzakció közepén végrehajtott checkout is mindig, minden esetben konzisztens lesz. Erre a feature-re valószínűleg nem lesz szükséged.
Más verziókezelők tudják azt, hogy ha te csak a teljes forrásfa egy kisebb, önálló részletén dolgozol, akkor ehhez nem kell a teljes forrásfát kicheckelned, tehát lehetőséged van rész-checkout-olni. Valószínűleg az a feature sem kell neked...
És hát a jó hír, hogy verziókezelőt váltani messze nem olyan fájdalmas, mint mondjuk adatbázismotort, fejlesztőeszközt vagy nyelvet.

Más verziókezelők tudják azt, hogy ha te csak a teljes forrásfa egy kisebb, önálló részletén dolgozol, akkor ehhez nem kell a teljes forrásfát kicheckelned, tehát lehetőséged van rész-checkout-olni.

Lehet, hogy felreertek valamit, de epp most checkoutoltam ki az egyik kulso fejlesztonek a source tree egy eleg kis szegletet, amit utana megelegedessel hasznalt tovabb. Leven a teljes forrasfa jo nehany moduljabol mindossze egy tartozott hozza.

---
pontscho / fresh!mindworkz

egyertelmuen SVN :)
------------------
Mindenre tudok magyarázatot találni, legfeljebb nem stimmel.

svn: könnyű, gyors, sok protokollon elérhető, könnyű konfigolni

Koszonom a valaszokat, a git-et probalom ki egyelore.

ASK Me No Questions, I'll Tell You No Lies

Még egy SVN (subversion) szavazat innen.
Keress a Gugliban version control összehasonlítást, és azt fogod látni, hogy az SVN az egyetlen nyílt forrású megoldás, ami ugyanannyit tud, mint a ClearCase.

Ez tényleg olyan mint a "melyik linux disztrót válasszam?"
- Olyat használj amihez van a közelben "szakértő"
- azt is nézd meg ,hogy mire szeretnéd haználni. Lehet ,hogy a sok szuper verziókővető extra szolgáltatásaira nincs is szükséged :-)

Magam részéről a cvsnt (nem a sima cvs) ajánlom. A nevével ellentétben nem csak nt-n fut :-). Windowsra és unix(okra) is van

- felülről kompatibilis a cvs-sel.
- több protokollt is támogat
- Tényleg egyszerű az installja és a beállítása
- Kliensek :WinCvs / MacCvs / gCvs, eclipse is alaból tud kapcsolódni hozzá ...

http://www.cvsnt.org
http://www.march-hare.com/cvspro/compare.htm
http://www.march-hare.com/cvspro/svn.htm

Sziasztok!
Subversion tárolót szeretnék CVS parancsokkal elérni, mennyire lehetséges ez? Sajnos a legtöbb fejlesztőeszköz csak a CVS használatát támogatja (legalábbis amiket eddig néztem: Screem, Anjuta, az Eclipe és társait hagyjuk, mert az már ágyúval verébre), a Google -ban próbáltam eredményre jutni különféle kulcsszavakkal, de eddig semmi.
Köszönöm a segítséget! :)

-----
"Egy jó kapcsolatban a társunkat az ő dolgában kell támogatni, nem a miénkben."

A baj nem a parancsokkal van. Elég kevés szoftverben van SVN támogatás, CVS támogatás viszont jóval többen. Jó lenne valamilyen módon elérni ezekkel a szoftverekkel a távoli SVN repository -t (mondjuk http -n keresztül), de ahogy elnézem, felejtős... :(

-----
"Egy jó kapcsolatban a társunkat az ő dolgában kell támogatni, nem a miénkben."

Biztos csak én nem értem a problémát. Ha már IDE, akkor eclipse, ahhoz van SVN plugin. Meg kb az összeshez szerintem.

Ha linux, commandline, akkor van svn kliens.
Ha windows, és nem eclipse, akkor TortoiseSVN.

Van még valami scenario amit nem fednek le ezek a dolgok?
--
Gabriel Akos

Sajnos a legtöbb IDE -hez nincs SVN plugin, míg a CVS támogatás ne van építve. Az Eclipse pedig jó lenne, ha nem lenne olyan erőforrás-igényes, így viszont nem igazán jön számításba.

Kérdés van: Ha két szerver között folyamatosan szinkronizálni szeretném a repository -t (amolyan biztonsági másolatként), hogyan tehetem meg biztonsággal?

-----
"Egy jó kapcsolatban a társunkat az ő dolgában kell támogatni, nem a miénkben."

Az lehet, de ezt legfeljebb akkor tudod megváltoztatni (a legtöbb esetben), ha újrafordítod a kérdéses programot. Mivel volt időm - és egy kis agymenésem - ezért próbaképpen az /usr/bin/svn -re tettem linket /usr/bin/cvs néven, és kipróbáltam pár cvs -t ismerő alkalmazást... lett is "core dumped" rendesen. :S

-----
"Egy jó kapcsolatban a társunkat az ő dolgában kell támogatni, nem a miénkben."

Az anjutában már van svn plugin. Csak ugye azt a verziót még nem szállítják a disztrók. Telepítsd fel svn-ből :). De ha találsz 2.x verziós anjuta csomagot, abba van.

Szerk:
Hogy lásd mien vagyok, forrás,Ubuntu Feisty és Fedora repo:
Forrás: ftp://ftp.gnome.org/pub/GNOME/sources/anjuta/2.1/

Ubuntu: http://anjuta.org/apt/

Fedora (2.0 de azt mondják van benne): http://download.fedora.redhat.com/pub/fedora/linux/extras/6/i386/ (sz sztem a hivatalos 6-os repo)
SuSE alá nem találtam.

Más is nyugodtan használhatja. :)

Ha már ilyen sokat tudtatok segíteni, kérdeznék még.
Szóval manapság több portált is készítettem, ahol adatbázis is van. Nyilván valahogy ezt is "verziókezelni" kellene, hiszen ha vissza akarok állítani egy korábbi állapotot, akkor az adatbázist is vissza kell állítanom.
Erre milyen lehetőséget tudtok mondani? Nekem az jött ötletként, hogy minden commit elött kidumpolom az adatbázist egy ugyanolyan nevű állományba, és így az is el lesz tárolva a repository -ban.
Esetleg van erre valami jobb, használhatóbb megoldás?

-----
"Egy jó kapcsolatban a társunkat az ő dolgában kell támogatni, nem a miénkben."

Kettő szervered van, az egyiken megy a publikációs workflow eleje a tényleges "publish" gomb megnyomásáig, mire a szerver kitolja a külső, nyal, izé, nyilvános webszerverre az offline másolatot. Az offline másolatot betolod valamilyen verziókezelőbe is.

Az adatbázisban meg van dátum tipus, azt minden sor mellé oda lehet tenni, alapértelmezetten sysdate-tel, és nem update, hanem insert, és a select-ekben egy jólirányzott where-feltétellel kezelni a dolgot. Ehez persze meg kell valósítani egy purge eljárást, ami a régi rekordokat kidobálja. Vagy normális rdbms-t használsz, és a fontosabb táblák mellé teszel egy-egy logtáblát, amibe egy-egy jól kitalált before update/before insert/before delete trigger berakja a régi és az új értékeket.

ŐŐŐőőő... izé... azt hiszem, jobban járok talán, ha az általam leírt módszert használom. Amúgy semmi sem publikus (portál, adatbázis, repository), minden localhost -on megy.

-----
"Egy jó kapcsolatban a társunkat az ő dolgában kell támogatni, nem a miénkben."

Az adatbázisok dumpja pár tíz megabyte, szóval nem kell itt nagy méretekre gondolni. Mindenesetre köszönöm a válaszodat, nagyon hasznos volt, még ha el is kellett párszor olvasnom ahhoz, hogy a lényegét megértsem. :)

-----
"Egy jó kapcsolatban a társunkat az ő dolgában kell támogatni, nem a miénkben."