CVS at Subversion

Anonim

CVS vs Subversion

Ang Concurrent Versions System (kilala rin bilang Concurrent Versioning System o CVS) ay isang libreng software control control system -na, ito ay isang programa na bukas para gamitin sa publiko na namamahala ng mga pagbabago sa mga dokumento, programa, at iba pang impormasyon na nakaimbak sa computer mga file). Pinapayagan nito ang maramihang mga developer na makipagtulungan.

Ang pagbabagsak (kilala rin bilang SVN) ay isang bersyon ng sistema ng kontrol na ginagamit upang mapanatili ang kasalukuyan at naunang bersyon ng mga file (tulad ng source code, mga web page, at dokumentasyon). Ito ay isang direktang pag-upgrade ng CVS at ang pinaka-tugmang kapalit nito. Ito rin ay isang bukas na pinagmulan ng teknolohiya at malawak na ginagamit sa maraming proyekto-tulad ng Apache Software Foundation, Libreng Pascal, MediaWiki, at Google code.

Ang CVS ay gumagamit ng arkitektura ng server ng kliyente - nangangahulugan ito na ang isang server ay nag-iimbak ng isang kasalukuyang bersyon (o mga bersyon) ng isang partikular na proyekto pati na rin ang pag-save ng kasaysayan nito. Pagkatapos ay kumonekta ang kliyente sa server bilang paraan upang 'tingnan' ang isang kopya ng proyekto na nakumpleto bago ang kanyang pagkonekta sa server. Ang kliyente ay kaya na magtrabaho sa kopya ng proyekto at pagkatapos ay masuri ang mga pagbabago na ginawa niya sa ibang pagkakataon. Pati na rin na pinapayagan ang isang kliyente na mag-check in sa isang kopya ng isang tiyak na proyekto, pinapayagan ng CVS ang maraming mga kliyente na magtrabaho at mag-check in sa parehong proyekto na kasabay. Ang mga kliyente ay maaaring baguhin ang mga file sa loob ng kanilang sariling nagtatrabaho kopya ng proyekto at ipadala ang mga pag-edit sa server.

Ang mga pagbabagsak ay gumagawa ng isang hanay ng mga pansamantala na pagbabago at ginagawa itong permanenteng bilang totoong atomic (o isang serye ng mga pagpapatakbo ng data kung saan nangyayari ang lahat ng bagay o walang nangyayari) na mga operasyon. Ang pagbabagsak ay nagpapahintulot din sa mga gumagamit na baguhin ang pangalan, kopyahin, ilipat, at / o tanggalin ang mga file; gayunpaman, ang mga file na iyon ay panatilihin ang kanilang buong kasaysayan ng pagbabago. Ang system na ito ay gumagamit ng output na parsable, natively client / server layered na disenyo ng library, at sumasanga at pag-tag bilang murang mga operasyon (maliban sa laki ng file). May mga bindings ng wika para sa PHP, Python, Perl, at Java. Ang pagbabagsak ay nagkakahalaga rin ayon sa laki ng pagbabago at hindi ang sukat ng data.

Maaaring mapanatili ng CVS ang iba't ibang mga sangay ng isang proyekto -na ibig sabihin, ang iba't ibang aspeto o permutasyon ng parehong proyekto ay maaaring lumabas mula sa pinagmulan ng proyekto at pinapanatili ng CVS ang lahat ng mga bersyon (isang inilabas na bersyon ng mga pormularyo ng proyekto na isang branch para sa mga pag-aayos ng bug, habang Ang isang iba't ibang mga bersyon na kasalukuyang binuo ay maaaring maglaman ng mga bagong tampok at mga pangunahing pagbabago at bumuo ng isang sangay ng parehong proyekto, halimbawa).

Buod: 1. Pinapayagan ng CVS ang maramihang mga gumagamit na makipagtulungan sa parehong proyekto; Ang pagbabagsak ay nagpapanatili sa kasalukuyang at naunang bersyon ng mga file. 2. Pinapayagan ng CVS ang mga user na mag-check in sa parehong proyekto at baguhin ito; Ang pagbabagsak ay totoo bilang mga operasyong atomic. 3. Maaaring mapanatili ng CVS ang iba't ibang sangay ng isang proyekto; Ang pagbabagsak ay gumagamit ng parsable output.