Diferența dintre CVS și Subversion Diferenta intre

Anonim

CVS vs. Subversion

Sistemul de versiuni concomitente (cunoscut și sub denumirea de System Versioning Concurrent sau CVS) este un sistem de control al revizuirii software-ului liber - publicul care gestionează modificările aduse documentelor, programelor și altor informații stocate în fișierele computerului). Permite mai multor dezvoltatori să colaboreze.

Subversiunea (cunoscută și sub numele de SVN) este un sistem de control al versiunii utilizat pentru a menține versiunile curente și cele anterioare ale fișierelor (cum ar fi codul sursă, paginile web și documentația). Este o actualizare directă a CVS și a succesorului său cel mai compatibil. Este, de asemenea, o tehnologie open source și a fost utilizată pe scară largă în mai multe proiecte - cum ar fi Apache Software Foundation, Free Pascal, MediaWiki și cod Google.

CVS utilizează arhitectura serverului client - aceasta înseamnă că un server stochează o versiune curentă (sau versiuni) a unui anumit proiect, precum și salvează istoricul. Clientul se conectează apoi la server ca mijloc de a "verifica" o copie a proiectului care a fost finalizată înainte de a se conecta la server. Clientul este apoi capabil să lucreze la această copie a proiectului și apoi să verifice modificările pe care le-a făcut mai târziu. Pe lângă faptul că permite unui client să se înregistreze pe o copie a unui anumit proiect, CVS permite mai multor clienți să lucreze și să conecteze același proiect simultan. Clienții vor putea să modifice fișierele în propria copie de lucru a proiectului și să trimită aceste modificări pe server.

Subversiunea se comportă - adică creează un set de schimbări tentative și le face permanente - ca adevărat atomic (sau o serie de operațiuni de date în care se întâmplă fie totul, fie nu se întâmplă nimic) operații. Subversiunea permite utilizatorilor să redenumească, să copieze, să se mute și / sau să înlăture fișierele; cu toate acestea, aceste fișiere își vor păstra istoricul complet al revizuirilor. Acest sistem utilizează ieșirea parsibilă, designul bibliotecii layere nativ client / server și ramificarea și etichetarea ca operații ieftine (independent de dimensiunea fișierului). Exista legaturi de limbaj pentru PHP, Python, Perl si Java. Subversiunea costă, de asemenea, în funcție de dimensiunea schimbării și nu de dimensiunea datelor.

- CVS poate menține diferite ramuri ale unui proiect - adică diferite aspecte sau permutări ale aceluiași proiect se pot separa de proiectul sursă, iar CVS va menține toate versiunile (o versiune lansată a proiectului proiectul formează o ramură pentru remedierea erorilor, în timp ce o versiune diferită, care este în curs de elaborare, poate conține noi caracteristici și schimbări majore și poate forma o ramură a aceluiași proiect, de exemplu).

Rezumat:

1. CVS permite mai multor utilizatori să colaboreze în același proiect; Subversion menține versiunile curente și cele anterioare ale fișierelor.

2. CVS permite utilizatorilor să acceseze același proiect și să îl modifice; Subversiunea se comportă ca operații atomice adevărate.

3. CVS poate menține diferite ramuri ale unui proiect; Subversiunea utilizează ieșirea parsibilă.