Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 19 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
19
Dung lượng
1,59 MB
Nội dung
BÁO CÁO BÀI TẬP LỚN Đề tài: Tìm hiểu về Git dưới góc nhìn của Hệ phân tán Giảng viên hướng dẫn: TS Đặng Tuấn Linh Danh sách thành viên nhóm: Họ tên Nguyễn Thành Bắc MSSV 20194229 Trương Văn Hiển 20194276 Đinh Trọng Nghĩa 20194340 Nguyễn Trường Sơn 20194364 Chương 1: Kiến trúc hệ phân tán • 1.1 Khái niệm Git • 1.2 Các lợi Git • 1.3 Đặc tính phi tập trung Git • 1.4 Hệ thống quản lý phiên (VCS) • 1.5 Mơ hình quản lý source phân tán • 1.6 So sánh mơ hình quản lý source CVS SVN • 1.1 Khái niệm về Git - Git tên gọi Hệ thống quản lý phiên phân tán (Distributed Version Control System – DVCS) hệ thống quản lý phien phân tán phổ biến • 1.2 Các lợi của Git - Mã nguồn mở miễn phí Tốc độ nhanh nhỏ gọn Dự phịng ẩn An tồn cao Không yêu cầu phần cứng mạnh Phân nhánh dễ dàng • 1.3 Đặc tính phi tập trung của Git - Ví dụ minh họa: • 1.4 Hệ thống quản lý phiên (VCS) - Là dạng phần mềm Quản lý mã nguồn (SCM) - Vì phải sử dụng VCS? =>Vì VCS hệ thống hỗ trợ làm việc nhóm hiệu - Chức VCS: + Lưu lại lịch sử thay đổi file + Làm việc đồng thời + Phân nhánh hợp + Truy xuất nguồn gốc • 1.5 Mơ hình quản lý source phân tán - Git có hướng tiếp cận hoàn toàn so với SVN - Source control đời để phục vụ nhu cầu cho nhiều developer - Git hoàn toàn đối lập - Tính phân tán an tồn tính tập trung • 1.6 So sánh mơ hình quản lý source CVS - SVN - Sự cải thiện lớn SVN từ CVS bổ sung commit thành viên gọi Atomic Commit - Các commit SVN roll-back lại trạng thái trước đó, CVS undo - SVN tiện lợi CVS việc đổi tên di chuyển tập tin, thư mục 10 Chương 2: Trao đổi thông tin - Phần lớn thao tác/hoạt động Git cần yêu cầu tập tin hay tài nguyên cục 11 Chương 3: Cơ chế định danh - Thành phần quan trọng object: type (4 loại: blob, tree, commit, tag), size, content - Khái niệm liên quan đến chế snapshot Git loose object format (định danh đối tượng suốt git) 12 Chương 4: Cơ chế đồng hóa - Git Github không giống chúng thường sử dụng nhau: + Git hệ thống kiểm soát phiên + Muốn lưu trữ host website tạo tài khoản Github, … - Kho lưu trữ cục từ xa: + Clone tạo kho lưu trữ Git + Để đồng hóa kho này, sử dụng nhiều hàm (git fetch, git pull, git push) - Lấy commits từ kho lưu trữ gốc 13 Chương 5: Tính nhân và quán • 5.1 Tính nhân • 5.2 Tính qn • 5.2.1 Quản lý liệu Git • 5.2.2 Các trạng thái Git 14 • 5.1 Tính nhân - Quan trọng với hệ phân tán vì: + Tăng tính tin cậy cho hệ thống + Tăng hiệu hệ thống - Tiêu chí Git: “Every thing is local” - Các nhân lưu trữ trực tiếp local người dùng 15 • 5.2.1 Quản lý liệu Git - Mọi thứ Git “băm” trước lưu trữ tham chiếu tới mã băm - Cơ chế Git sử dụng mã băm SHA-1 - Các mã băm sử dụng nơi Git - Git quản lý Repository theo phiên mà liệu bị sửa đổi 16 • 5.2.2 Các trạng thái Git - Quản lý dựa trạng thái: committed, modified staged - Dự án sử dụng Git: thư mục Git, thư mục làm việc khu vực tổ chức - Tiến trình cơng việc Git? 17 Chương 6: Tính chịu lỗi của hệ phân tán - Vấn đề xảy lỗi nằm q trình commit push liệu lên server - Không thể tránh khỏi việc có nhiều người dùng chỉnh sửa file liệu đẩy lên - Lỗi xảy hầu hết đến từ phía người dùng 18 THANK YOU ! 19