NGHIÊN CỨU VỀ GIT VÀ MINH HỌA I / GIT – CƠ BẢN VỀ NÓ: 1 Trước tiên tìm hiểu về VCS Hệ thống quản lý phiên bản Version control system - VCS là một dạng phần mềm Quản lý mã nguồn Source
Trang 1NGHIÊN CỨU VỀ GIT VÀ MINH HỌA
I / GIT – CƠ BẢN VỀ NÓ:
1) Trước tiên tìm hiểu về VCS
Hệ thống quản lý phiên bản (Version control system - VCS) là một dạng phần mềm Quản lý mã nguồn (Source Code Management- SCM)
Nó gồm 3 chức năng chính :
+ Ghi lại lịch sử: ghi lại các thông tin cần thiết của từng sửa đổi một
+ Chức năng phục hồi: cho phép khôi phục trạng thái trước, khi phát hiện lỗi trong quá trình làm
+ Chức năng đồng bộ
Một số khái niệm thường dùng trong VCS
a) Commit : Là thao tác ra lệnh cho VCS ghi lại những thay đổi mà tác giả thực hiện với các file mà VCS đang theo dõi Ngoài ra còn bổ sung them các chú thích từ tác giả cho commit này
b) Diff : dùng để phân tích sự khác nhau giữa 2 phiên bản nào đó Phần khác nhau này có thể xuất ra thành một file gọi là “patch”
c) Applying patch: là việc chiết xuất những file sau sửa đổi bằng việc tổng hợp bản trước khi sửa đổi và bản batch
2) GIT LÀ GÌ?
Git là một VCS giúp cho việc quản lý các phiên bản source code trở nên tiện lợi
và hiệu quả Tuy nhiên GIT sử dụng một phương thức quản lý phân bố , không tập trung tại một server cụ thể Nó cho phép các nhà phát triển tạo ngay một bản sao
của repository ngay tại máy của họ từ việc clone repository gốc tại server và quản
lý ngay tại máy , không cần phải kết nối tới server nào đó để làm việc
Tất cả thao tác ta làm việc với Git đều ở trên máy của ta, local repository, khi quyết định đưa những thay đổi đó lên server ta chỉ cần một thao tác "push" nó lên
Trang 2repositories gốc trên server Và dĩ nhiên là mọi thao tác đều mang theo thông tin history với Git
Điều này tạo nên sự linh động cho các nhà phát triển mà không cần phải mất thời gian do sự ì ạch của mạng Việc truy cập internet chỉ cần khi mà nhà phát triển muốn đồng bộ các bản sao ở máy với bản chính được đặt trên server
Trước đó ta có nhắc đến repository Vậy repository là gì?
Repository:
Được dùng để chỉ một cơ sở dữ liệu chứa các thông tin cần thiết phục vụ cho việc lấy lại và quản lý các phiên bản trước kia của project
Các thành phần của repository được lưu trữ trong thư mục git
Repository chứa các thông tin phiên bản , log messages , tác giả,… trong một thư mục object Nơi đây gồm có 4 đối tượng đó là : blob, trees, commit ,tags
SERVER (ORIGIN PROJECT)
DEV 4 DEV 2
Trang 3Để hiểu rõ hơn , ta hãy thực hiện việc cài đặt GIT trên window và tiến hành demo thử
Trước tiên ta tạo một tài khoản trên http:/github.com
Bước kế là cài đặt GIT lên window , sau khi cài đặt xong ta có được giao diện dòng lệnh như sau
Trang 4Sau đó ta tiến hành config user.name và user.email cho GIT Bằng từ khóa GLOBAL ta chỉ cần set một lần duy nhất cho các project sau này của ta cho user name và email
Để xem cấu hình của git ta dùng $git config –list
Trang 5Xong xuôi mọi chuyện , ta bắt đầu tạo thư mục làm việc cho project của chúng ta
Giả sử tạo thư mục LOZI tại ổ E và khởi tạo thư mục đó thành nơi làm việc của GIT, ta làm như trên
Ta bắt đầu clone project từ trang https://github.com/meonam1712/lozi về
Trang 6Đây là nơi mà các file trên trang github đc tải về , và thư mục git là nơi
chứa dữ liệu do git xử lý.Và mọi thao tác ta xử lý đều cục bộ trên máy cho
đến khi có lệnh push lên server
Bây giờ, ta tạo 1 tập tin thaydoi.docx Và bắt đầu gõ lệnh git status
Nó báo rằng xuất hiện file thaydoi.docx mà GIT chưa biết
Để track nó , ta dùng lệnh git add thaydoi.docx để đưa nó vào STAGED (nơi
mà tạm thời lưu các thay đổi trước khi lệnh commit thực hiện )
Trang 7Để commit nó ta dùng lệnh git commit –m “Thông điệp ghi lại”
Thế là ta đã commit thành công Và ta muốn push commit này lên lại github
thì ta làm như sau
Trang 8Vào github check lại
Thế là xong một demo khá đơn giản
P/S Anh Trung ơi , thông cảm giúp e nhen ! Demo này e làm hơi đơn giản Chưa thể hiện hết được ý đồ của GIT Em sẽ nghiên cứu kỹ rồi demo một cái khác hay hơn! Anh xem giúp em, có chỗ nào em hiểu sai hay thiếu chỉ giúp em nhen Thanks anh nhiều nhiều!