Share to: share facebook share twitter share wa share telegram print page

 

CVS

CVS là chữ viết tắt của Concurrent Versions System từ tiếng Anh. CVS có nghĩa là "hệ thống các phiên bản đồng thời". CVS còn có tên gọi khác là Concurrent Versioning System. Đây là hệ thống quản lý các phiên bản phần mềm mã nguồn mở được đề xuất và phát triển bởi Dick Grune vào thập niên 1980. CVS được dùng để theo vết tất cả các công việc và các thay đổi trong một tập hợp các tập tin. CVS cho phép nhiều lập trình viên và các thành viên khác trong một tổ phát triển phần mềm cộng tác với nhau. CVS đã trở nên phổ biến trong thế giới phần mềm mã nguồn mở và được cấp phép bởi giấy phép công cộng GNU GPL.

Các đặc điểm

CVS sử dụng kiến trúc client-server, trong đó phía server lưu trữ các phiên bản hiện tại của dự án và lịch sử của nó. Trong khi đó, các client (tạm hiểu là các nhà phát triển) kết nối tới server để lấy về một phiên bản copy đầy đủ dự án, làm việc trên phiên bản đó và sau đó lưu lại nhưng thay đổi của họ. Thông thường, client và server kết nối thông qua mạng LAN hoặc Internet. Client và server có thể cùng chạy trên một máy nếu CVS có nhiệm vụ theo vết lịch sử của dự án do các nhà phát triển phần mềm phát triển trong nội bộ. Phần mềm server thường chạy trên Unix, trong khi CVS client có thể chạy trên nhiều hệ điều hành khác nhau.

Nhiều nhà phát triển phần mềm có thể làm việc đồng thời trên cùng một dự án. Trong đó, mỗi nhà phát triển thay đổi nội dung các tập tin bên trong phiên bản copy của dự án của chính họ và sau đó gởi những thay đổi của họ về máy server. Để tránh việc người này ghi đè lên những thay đổi của người khác, server chỉ chấp nhận những thay đổi đối với phiên bản gần đây nhất của một file. Điều này cũng giúp cho các nhà phát triển dự án luôn làm việc trên các bản copy mới nhất bằng cách kết hợp với những thay đổi của người khác dựa trên những nguyên tắc cơ bản. Điều này được thực hiện một cách tự động bởi CVS client. Nếu client lấy nội dung của dự án thành công thì định danh (thường là con số thể hiện phiên bản) của tất cả các tập tin được tự động tăng lên và server có nhiệm vụ lưu lại tất cả các thao tác này trong các tập tin gọi là tập tin nhật ký (logs file) bao gồm các nội dung như ngày tháng, tên của nhà phát triển phần mềm, các mô tả tóm lược...

Các client cũng có thể so sánh các thuật toán, yêu cầu lịch sử đầy đủ của sự thay đổi. Nhiều dự án mã nguồn mở cũng cho phép kiểu truy cập nặc danh (anonymous read access) để đọc, ý tưởng này được đưa ra bởi OpenBSD.

Client cũng có thể sử dụng lệnh cập nhật để cập nhật bản copy của họ với phiên bản mới nhất trên server. Điều này loại bỏ được khả năng download lặp lại toàn bộ dự án.

CVS sử dụng phương pháp nén delta compression để tiết kiệm chi phí lưu trữ các phiên bản khác nhau của cùng một tập tin.

Thuật ngữ

Một dự án riêng lẻ (single project)- một tập các tập tin có liên quan với nhau được gọi là module. CVS server lưu trữ các module nó quản lý trong một nơi gọi là "kho" (repository). Việc yêu cầu một phiên bản copy của một module gọi là checking out.

Xem thêm

Tham khảo

Kembali kehalaman sebelumnya


Index: pl ar de en es fr it arz nl ja pt ceb sv uk vi war zh ru af ast az bg zh-min-nan bn be ca cs cy da et el eo eu fa gl ko hi hr id he ka la lv lt hu mk ms min no nn ce uz kk ro simple sk sl sr sh fi ta tt th tg azb tr ur zh-yue hy my ace als am an hyw ban bjn map-bms ba be-tarask bcl bpy bar bs br cv nv eml hif fo fy ga gd gu hak ha hsb io ig ilo ia ie os is jv kn ht ku ckb ky mrj lb lij li lmo mai mg ml zh-classical mr xmf mzn cdo mn nap new ne frr oc mhr or as pa pnb ps pms nds crh qu sa sah sco sq scn si sd szl su sw tl shn te bug vec vo wa wuu yi yo diq bat-smg zu lad kbd ang smn ab roa-rup frp arc gn av ay bh bi bo bxr cbk-zam co za dag ary se pdc dv dsb myv ext fur gv gag inh ki glk gan guw xal haw rw kbp pam csb kw km kv koi kg gom ks gcr lo lbe ltg lez nia ln jbo lg mt mi tw mwl mdf mnw nqo fj nah na nds-nl nrm nov om pi pag pap pfl pcd krc kaa ksh rm rue sm sat sc trv stq nso sn cu so srn kab roa-tara tet tpi to chr tum tk tyv udm ug vep fiu-vro vls wo xh zea ty ak bm ch ny ee ff got iu ik kl mad cr pih ami pwn pnt dz rmy rn sg st tn ss ti din chy ts kcg ve 
Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9