Hướng dẫn Git căn bản, Git là gì?

Công cụ lập trình

Khó khăn nhất trong phát triển dự án phần mềm là làm sao để quản lý mã nguồn thật tốt. Ví dụ khi bạn sửa một file vào ngày thứ 2 đầu tuần, vào ngày thứ 3 bạn cũng có một số chỉnh sửa, nhưng sau đó bạn nhận thấy cần phải sử dụng lại code của ngày thứ 2 thì thông thường đó là điều không thể, trừ khi bạn backup lại mã nguồn đó. Vấn đề này sẽ được giải quyết dứt điểm dựa vào Git, một hệ thống quản lý mã nguồn phân tán tốt nhất hiện nay.

Git căn bản

Git là gì?

Git là tên gọi của một Hệ thống quản lý phiên bản phân tán (Distributed Version Control System – DVCS) là một trong những hệ thống quản lý phiên bản phân tán phổ biến nhất hiện nay. DVCS nghĩa là hệ thống giúp mỗi máy tính có thể lưu trữ nhiều phiên bản khác nhau của một mã nguồn được nhân bản (clone) từ một kho chứa mã nguồn (repository), mỗi thay đổi vào mã nguồn trên máy tính sẽ có thể ủy thác (commit) rồi đưa lên máy chủ nơi đặt kho chứa chính. Và một máy tính khác (nếu họ có quyền truy cập) cũng có thể clone lại mã nguồn từ kho chứa hoặc clone lại một tập hợp các thay đổi mới nhất trên máy tính kia. Trong Git, thư mục làm việc trên máy tính gọi là Working Tree. Đại loại là như vậy.

GIT là gì?
GIT là gì?

Ngoài ra, có một cách hiểu khác về Git đơn giản hơn đó là nó sẽ giúp bạn lưu lại các phiên bản của những lần thay đổi vào mã nguồn và có thể dễ dàng khôi phục lại dễ dàng mà không cần copy lại mã nguồn rồi cất vào đâu đó. Và một người khác có thể xem các thay đổi của bạn ở từng phiên bản, họ cũng có thể đối chiếu các thay đổi của bạn rồi gộp phiên bản của bạn vào phiên bản của họ. Cuối cùng là tất cả có thể đưa các thay đổi vào mã nguồn của mình lên một kho chứa mã nguồn.

Cơ chế hoạt động của Git

Cơ chế lưu trữ phiên bản của Git là nó sẽ tạo ra một “ảnh chụp” (snapshot) trên mỗi tập tin và thư mục sau khi commit, từ đó nó có thể cho phép bạn tái sử dụng lại một ảnh chụp nào đó mà bạn có thể hiểu đó là một phiên bản. Đây cũng chính là lợi thế của Git so với các DVCS khác khi nó không “lưu cứng” dữ liệu mà sẽ lưu với dạng snapshot.

Giới thiệu series học Git

Trong bài này chủ yếu mình muốn giới thiệu với các bạn khái niệm Git là gì, đồng thời cũng chia sẻ những thông tin chi tiết hơn của series này.

Đây là series tự học Git dành cho người mới bắt đầu. Series này sẽ cung cấp cho các bạn kiến thức về cách quản lý mã nguồn trong thực tế thông qua Git, học xong series này mình đảm bảo bạn sẽ tự tin hơn khi đi xin việc bởi hầu hết các công ty tuyển dụng đều đưa Git vào giống như là một kỹ năng cần phải có.

Series cũng có tham khảo một số trang web tiếng Anh khác.