Chương 2. Khái niệm kiểm soát Phiên bản cơ bản

Mục lục

Kho lưu trữ
Mô hình Phiên bản
Vấn đề chia sẻ tập tin
Giải pháp Khóa-Sửa-Mở khóa
Giải pháp Sao chép-Sửa đổi-Hợp nhất
Subversion làm gì?
Subversion trong hành động
Bản sao Làm việc
URL kho chứa
Sửa đổi
Làm thế nào Các Bản Sao Làm Việc theo dõi các Kho
Tóm tắt

Chương này là một phiên bản sửa đổi của cùng một chương trong cuốn sách Subversion. Một phiên bản trực tuyến của cuốn sách Subversion có sẵn ở đây: http://svnbook.red-bean.com/.

Chương này là một giới thiệu ngắn, bình thường tới Subversion. Nếu bạn là người mới đến với kiểm soát phiên bản, chương này chắc chắn là dành cho bạn. Chúng ta bắt đầu với một cuộc thảo luận về khái niệm chung về kiểm soát phiên bản, làm việc theo cách của chúng tôi vào những ý tưởng cụ thể sau Subversion, và hiển thị một số ví dụ đơn giản về Subversion đang được sử dụng.

Mặc dù các ví dụ trong chương này cho thấy mọi người chia sẻ bộ sưu tập của mã nguồn chương trình, hãy nhớ rằng Subversion có thể quản lý bất kỳ loại sưu tập tập tin nào - nó không bị giới hạn trong việc giúp các lập trình viên máy tính.

Kho lưu trữ

Subversion là một hệ thống tập trung chia sẻ thông tin. Tại cốt lõi của nó là một kho , đó là một cửa hàng trung tâm dữ liệu. Kho lưu trữ thông tin trong các hình thức của một cây hệ thống tập tin - Một hệ thống cấp bậc của các tập tin và thư mục. Số lượng bất kỳ các chương trình khách kết nối với kho lưu trữ, và sau đó đọc hoặc viết vào những tập tin này. Bằng cách ghi dữ liệu, chương trình khách hàng làm cho thông tin có sẵn cho những người khác; bằng cách đọc dữ liệu, chương trình khách hàng nhận được thông tin từ những người khác.

Hình 2.1. Một hệ thống Máy Khách/Máy Chủ điển hình

Một hệ thống Máy Khách/Máy Chủ điển hình

Vì vậy, tại sao điều này thú vị? Cho đến nay, điều này nghe giống như định nghĩa của một máy chủ tập tin thông thường. Và quả thực, các kho lưu trữ một loại máy chủ tập tin, nhưng nó không giống loại bình thường của bạn. Những gì làm cho kho lưu trữ Subversion đặc biệt là nó nhớ mọi sự thay đổi từng được viết vào nó: mỗi lần thay đổi cho mỗi tập tin, và thậm chí thay đổi cây thư mục, chẳng hạn như việc bổ sung, xóa, và sắp xếp lại các tập tin và thư mục.

Khi một khách hàng đọc dữ liệu từ kho lưu trữ, nó thường chỉ nhìn thấy có phiên bản mới nhất của cây hệ thống tập tin. Nhưng khách hàng cũng có khả năng xem trước trạng thái của hệ thống tập tin. Ví dụ, một khách hàng có thể đặt câu hỏi lịch sử như, thư mục này đã làm những gì chứa thứ Tư tuần trước? , Hoặc người cuối cùng để thay đổi tập tin này, và thay đổi những gì họ làm cho? Đây là loại câu hỏi được ở trung tâm của bất kỳ hệ thống kiểm soát phiên bản : Hệ thống được thiết kế để ghi lại và theo dõi những thay đổi dữ liệu theo thời gian.