Danh mục

Hệ thống quản lý phiên bản theo mô hình phân tán

Số trang: 47      Loại file: docx      Dung lượng: 4.52 MB      Lượt xem: 17      Lượt tải: 0    
10.10.2023

Phí tải xuống: 7,000 VND Tải xuống file đầy đủ (47 trang) 0
Xem trước 5 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Trong công nghệ phần mềm các lập trình viên ,nhóm làm việc với nhiều dự án,mỗi dự án lại có nhiều phiên bản khác nhau , trong mỗi phiên bản việc liên tục chỉnhsửa mã nguồn là điều không chánh khỏi .Khi các dự án và các phiên bản đã làm việc cósố lượng lớn thì việc quản lý các phiên bản phải liên tục sử đổi và dự án trở nênphức tạp
Nội dung trích xuất từ tài liệu:
Hệ thống quản lý phiên bản theo mô hình phân tán Hệ Thống Quản Lý Phiên Bản Theo Mô Hình Phân Tán (Distributed Version Control System) GVHD :NGUYỄN MINH ĐỨC SINH VIÊN : NGUYỄN NGỌC LAN ĐÀI TRẦN TIẾN LONG NGUYỄN ĐỨC ANH Tổng quan về hệ thống quản lý phiên bản 1. a.Tại sảo phải có các hệ thống quản lý phiên bản (Version control system) Trong công nghệ phần mềm các lập trình viên ,nhóm làm việc với nhiều dự án ,mỗi dự án lại có nhiều phiên bản khác nhau , trong mỗi phiên bản việc liên tục chỉnh sửa mã nguồn là điều không chánh khỏi .Khi các dự án và các phiên bản đã làm việc có số lượng lớn thì việc quản lý các phiên bản phải liên tục sử đổi và dự án trở nên phức tạp VD: Mỗi khi cần lấy lại một số mã nguồn cũ để phát triển thêm lập trình viện lại phải nhớ vị trí nơi lưu trữ bản sao , hoặc khi cần một đoạn mã nguồn trước đó hiện tại đã bị chỉnh sửa thì lập trình viên lại phải viết lại , việc chia sẻ,phân chia mã nguồn giữa các thành viên mất thời gian … Chính vì vậy cần phải có một hệ thống quản lý phiên bản (VCS - version control system), Nó lưu giữ các phiên bản của mã nguồn của sản phẩm phần mềm một cách ngăn - nắp,trình tự bên trong một thư mục được gọi là Repository - Theo dõi ,sao lưu,đồng bộ hóa các thay đổi ,giúp các lập trình viên có thể dễ dàng lấy lại phiên bản mong muốn - Cho phép nhiều developer cộng tác với nhau để cùng phát triển dự án ( http://vi.wikipedia.org/wiki/hệ_thống_quản _lý_phiên_bản ) b. Một số khái niệm sử dụng trong các hệ thống quản lý phiên bản (Theo http://vi.wikipedia.org/wiki/VCS ) - Repository:Thư mục lưu trữ tất cả các phiên bản của tất cả các file và những thayđổi của chúng ,nó có thể là nơi chứa các file mã nguồn , hỉnh ảnh ,âm thanh … (Repository của Egit – một plug in của Eclipse) - Phiên bản: Mỗi tập tin có thể có nhiều phiên bản (version). Các phiên bản được đánhsố khác nhau. Mỗi lần chúng ta hiệu chỉnh nội dung tập tin và cập nhật vào nơi chứa củaVCS, phiên bản sẽ được cập nhật.Một số VCS sử dụng hệ thống phiên bản 1, 2, 3, ... trong khi có một số khác sử dụng hệthống 1.0, 1.1, 1.2, ... Các VCS thường lưu phiên bản cuối cùng và các thay đổi của các phiênbản trước so với phiên bản cuối đó.Các số phiên bản (như 1.0, 1.1, hay 1.2,...) còn được gọi là revision.Đi đôi với số phiên bản, VCS lưu thêm các thông tin về ngày giờ cập nhật, người cập nhật vàmột số ghi chú nếu có.Một vấn đề nhỏ trong cách đánh số này là làm sao các thành viên trong nhóm biết được cácphiên bản của dự án. Số phiên bản trong dự án sẽ thay đổi khi phiên bản của tập tin thay đổi.Các VCS do đó sử dụng thêm một cách ghi nhận phiên bản là đánh nhãn (labeling, tag). Khiđó, cho dù số phiên bản của dự án thay đổi, nhãn của dự án vẫn không đổi.- Branch (phân nhánh) : Khi làm việc nhóm, mọi thành viên đều có một phần mã chung, gọilà nhánh chính (mainline). Và các thành viên đều làm việc với một phần của nhánh chính. Khicó yêu cầu tách một phần mã chung đó, ví dụ như để tạo một phiên bản để thử nghiệm, cácthành viên của nhóm phân phối thử nghiệm đó cần mã độc lập với nhánh chính. Giải pháp làdùng phân nhánh.Chia nhánh (branching) là một cơ chế của hệ thống quản lý phiên bản cho phép tách mộtphần của dự án ra riêng. Phần này sẽ hoạt động độc lập với dự án chung. Khi đó, việc đánhphiên bản cũng thay đổi.Ví dụ: nếu một tập tin A trong nhánh chính có số phiên bản là 1.14 và một nhánh mới đượctạo ra, A sẽ có số phiên bản trong nhánh là 1.14.1.1. Việc hiệu chỉnh tập tin đó trong nhánhchính sẽ cho chỉ số phiên bản mới trong nhánh chính là 1.15 tuy nhiên nếu hiệu chỉnh tập tinđó trong nhánh thì nó có số phiên bản mới là 1.14.1.2- Check out: Download một hoặc nhiều file từ Repository về thư Repository client ở máymình.Quá trình này bắt đầu đưa một phiên bản của project từ trên Server để làm việc Vi dụ về quá trình Check out sử sụng Subversion một hệ thống quản lý phiên bản- Commit: Lưu những sửa đổi của phiên bản trong Repository Hình ảnh minh họa quá trình commit - Merge (Gộp): Nhóm nội dung của 2 file lại với nhau thay ,trong một số trường hợpcần thiết thay vì tạo thêm một phiên bản mới có nội dung của 2 file .Khi gộp 2 file lại vớinhau vì mỗi phiên bản có những dòng code không giống nhau vì thế có thể xảy ra xung độtnhư hình : http://www.benefitsflex.net/perl_tools/ Push: Việc đưa tất cả các commit lên Repository ở Server .Phương thức này chỉ sử - dụng cho mô hình phân phối (DVCS) Pull: Cập nhật những thay đổi của Repository ở Server .Phương thức này chỉ sử - dụng cho mô hình phân phối (DVCS). c. Các loại mô hình của hệ thống quản lý phiên bản. Mô hình tập trung: Ce ...

Tài liệu được xem nhiều: